服務器負載均衡方案是怎樣的?負載均衡算法有哪些?
負載均衡是屬于服務器的一種應用技術,它是建立在現(xiàn)有的網(wǎng)絡結構上面的,能夠提高網(wǎng)絡的可用性和靈活性,那么服務器負載均衡方案是怎樣的?負載均衡算法有哪些呢?下面新網(wǎng)就來談談。
HTTP 重定向當HTTP代理(如瀏覽器)向Web服務器請求某個URL后,Web 服務器可以通過HTTP響應頭信息中的Location 標記來返回一個新的URL,這意味著HTTP代理需要繼續(xù)請求這個新的URL,這便完成了自動跳轉。
DNS 負載均衡
DNS負責提供域名解析服務,當我們訪問某個站點時,實際上首先需要通過該站點域名的DNS服務器來獲取域名指向的IP地址,在這一過程中,DNS服務器完成了域名到IP地址的映射,同樣,這種映射也可以是一對多的,這時候DNS服務器便充當了負載均衡調(diào)度器(也稱均衡器)。
反向代理服務器的核心工作便是轉發(fā) HTTP 請求,因此它工作在 HTTP 層面,也就是TCP七層結構中的應用層(第七層),所以基于反向代理的負載均衡也稱為七層負載均衡,實現(xiàn)它并不困難,目前幾乎所有主流的 Web 服務器都熱衷于支持基于反向代理的負載均衡。
在數(shù)據(jù)鏈路層(第二層)、網(wǎng)絡層(第三層)以及傳輸層(四層)都可以實現(xiàn)不同機制的負載均衡,但有所不同的是,這些負載均衡調(diào)度器的工作必須由Linux 內(nèi)核來完成,因為我們希望網(wǎng)絡數(shù)據(jù)包在從內(nèi)核緩沖區(qū)進入進程用戶地址空間之前,盡早地被轉發(fā)到其他實際服務器上。
現(xiàn)有的負載均衡算法主要分為靜態(tài)和動態(tài)兩類。靜態(tài)負載均衡算法以固定的概率分配任務,不考慮服務器的狀態(tài)信息,如輪轉算法、加權輪轉算法等;動態(tài)負載均衡算法以服務器的實時負載狀態(tài)信息來決定任務的分配,如最小連接法、加權最小連接法等。
1、輪詢法
輪詢法,就是將用戶的請求輪流分配給服務器,就像是挨個數(shù)數(shù),輪流分配。這種算法比較簡單,他具有絕對均衡的優(yōu)點,但是也正是因為絕對均衡它必須付出很大的代價,例如它無法保證分配任務的合理性,無法根據(jù)服務器承受能力來分配任務。
2、隨機法
隨機法,是隨機選擇一臺服務器來分配任務。它保證了請求的分散性達到了均衡的目的。同時它是沒有狀態(tài)的不需要維持上次的選擇狀態(tài)和均衡因子[5]。但是隨著任務量的增大,它的效果趨向輪詢后也會具有輪詢算法的部分缺點。
3、最小連接法
最小連接法,將任務分配給此時具有最小連接數(shù)的節(jié)點,因此它是動態(tài)負載均衡算法。一個節(jié)點收到一個任務后連接數(shù)就會加1,當節(jié)點故障時就將節(jié)點權值設置為0,不再給節(jié)點分配任務。
常見的軟件負載均衡技術
1、基于DNS的負載均衡
由于在DNS服務器中,可以為多個不同的地址配置相同的名字,最終查詢這個名字的客戶機將在解析這個名字時得到其中一個地址,所以這種代理方式是通過DNS服務中的隨機名字解析域名和IP來實現(xiàn)負載均衡。
2、反向代理負載均衡(如Apache+JK2+Tomcat這種組合)
該種代理方式與普通的代理方式不同,標準代理方式是客戶使用代理訪問多個外部Web服務器,之所以被稱為反向代理模式是因為這種代理方式是多個客戶使用它訪問內(nèi)部Web服務器,而非訪問外部服務器。
3、基于NAT(Network Address Translation)的負載均衡技術(如Linux VirtualServer,簡稱LVS)
該技術通過一個地址轉換網(wǎng)關將每個外部連接均勻轉換為不同的內(nèi)部服務器地址,因此外部網(wǎng)絡中的計算機就各自與自己轉換得到的地址上的服務器進行通信,從而達到負載均衡的目的。其中網(wǎng)絡地址轉換網(wǎng)關位于外部地址和內(nèi)部地址之間,不僅可以實現(xiàn)當外部客戶機訪問轉換網(wǎng)關的某一外部地址時可以轉發(fā)到某一映射的內(nèi)部的地址上,還可使內(nèi)部地址的計算機能訪問外部網(wǎng)絡。
聲明:免責聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權,也不承認相關法律責任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請發(fā)
送郵件至:operations@xinnet.com進行舉報,并提供相關證據(jù),一經(jīng)查實,本站將立刻刪除涉嫌侵權內(nèi)容。本站原創(chuàng)內(nèi)容未經(jīng)允許不得轉載,或轉載時
需注明出處:新網(wǎng)idc知識百科