柚子快報激活碼778899分享:負載均衡 運維 分布式系統(tǒng)
柚子快報激活碼778899分享:負載均衡 運維 分布式系統(tǒng)
概述
大型網站都要面對龐大的用戶量,高并發(fā),海量數(shù)據(jù)等挑戰(zhàn)。
為了提升系統(tǒng)整體的性能,可以采用垂直擴展和水平擴展兩種方式。
垂直擴展:從單機角度擴展,增加單機硬件(CPU、內存、磁盤)處理能力水平擴展:通過集群來分擔流量。集群中的應用服務器通常被設計為無狀態(tài),用戶可以請求任何一個節(jié)點
負載均衡就是將用戶的訪問請求,通過某種算法,分發(fā)到集群中的節(jié)點
目標是盡力將網絡流量平均分發(fā)到多個服務器上
作用
高并發(fā):提高集群的并發(fā)處理能力(吞吐量)
伸縮性:添加或減少服務器數(shù)量,由負載均衡分發(fā)控制,使集群具備伸縮性
高可用:負載均衡器可以監(jiān)控候選服務器,服務不可用時自動跳過,分發(fā)給可用的服務器。
安全防護:有些負載均衡軟件或硬件提供了
硬件負載均衡
在定制處理器上運行的獨立負載均衡服務器,價格昂貴
功能強大、性能強悍、安全性高
成本昂貴、擴展性差
軟件負載均衡
應用廣泛,主流產品:Nginx、HAProxy、LVS
LVS可以作為四層負載均衡器,性能比Nginx好HAProxy可以作為HTTP、TCP負載均衡器Nginx、HAProxy可以作為四層或七層負載均衡器
擴展性好、成本低廉
性能略差
七層負載均衡
根據(jù)訪問用戶的HTTP請求頭、URL信息將請求轉發(fā)到特定的主機
DNS重定向
復雜業(yè)務不適合用
大型網站一般用DNS負載均衡器作為第一級負載均衡手段
工作原理:基于DNS查詢緩存,按照負載情況返回不同服務器的IP地址
優(yōu)點:使用簡單、提高性能
缺點:可用性差、擴展性低、維護性差
HTTP重定向
原理:根據(jù)HTTP請求計算出一個真實的服務器地址,將該服務器地址寫入HTTP重定向響應中,返回給瀏覽器,由瀏覽器重新訪問
優(yōu)點:方案簡單
缺點:性能較差、降低搜索排名
使用較少
反向代理
以代理服務器接受網絡請求,將請求轉發(fā)給內網中的服務器,并將內網中的服務器上得到的結果返回給請求的客戶端
主流產品:Nginx、Apache
正向代理:用戶主動發(fā)起對代理服務器的請求,代理服務器訪問外網,再返回給客戶端
反向代理:發(fā)生在服務端,用戶不知道被代理
原理:代理服務器上設置好負載均衡規(guī)則,反向代理服務器攔截到指定的域名或IP,根據(jù)負載均衡算法,將請求分發(fā)到候選服務器上(分發(fā)請求失敗3次以上,分發(fā)到其他服務器上)
優(yōu)點:支持多種負載均衡算法、可以監(jiān)控服務器
缺點:額外轉發(fā)開銷、增加系統(tǒng)復雜度
四層負載均衡
基于IP地址和端口進行請求轉發(fā)
修改IP地址
負載均衡器修改目標IP地址,起到中介的作用。
修改MAC地址
數(shù)據(jù)鏈路層負載均衡
負載均衡算法
隨機算法
請求隨即分發(fā)到候選服務器
調用量越大,負載越均衡
加權隨機算法
在隨機算法的基礎上,按照概率調整權重
輪詢
將請求依次分發(fā)到候選服務器
適合場景:各服務器處理能力相近,且各事務工作量差異不大
加權輪詢
在輪詢的基礎上,增加權重調節(jié)轉發(fā)服務器的請求數(shù)目
性能高、處理速度快的節(jié)點應該設置更高的權重
最小活躍數(shù)
將請求分發(fā)到連接數(shù)/請求數(shù)最少的候選服務器
特點:動態(tài)分配
場景:對系統(tǒng)負載較為敏感或請求連接時長相差較大的場景
加權最小活躍數(shù)
在最小活躍數(shù)的基礎上,根據(jù)服務器的性能為每臺服務器分配權重,再根據(jù)權重計算出每臺服務器能處理的連接數(shù)。
源地址哈希
根據(jù)請求源IP,通過哈希計算得到一個數(shù)值,在候選服務器列表上取模運算
保證同一IP的客戶端請求轉發(fā)到同一個服務器上
一致性哈希
相同的請求盡可能落到同一個服務器上
柚子快報激活碼778899分享:負載均衡 運維 分布式系統(tǒng)
文章鏈接
本文內容根據(jù)網絡資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。
轉載請注明,如有侵權,聯(lián)系刪除。