負(fù)載均衡 1、負(fù)載均衡的幾種實現(xiàn)方式 1)基于HTTP重定向負(fù)載均衡(響應(yīng)碼302) 瀏覽器發(fā)送請教到負(fù)載均衡服務(wù)器,,服務(wù)器根據(jù)算法找到一臺服務(wù)主機,,然后在響應(yīng)碼中返回302及實際的IP地址,瀏覽器收到請教后進行目標(biāo)ip重定位訪問 優(yōu)點:實現(xiàn)簡單 缺點:瀏覽器需要交互兩次才能得到結(jié)果,,響應(yīng)時間長,,速度慢,一般網(wǎng)站比較少采用 瀏覽器-》負(fù)載均衡服務(wù)器-》找到真實主機,,加到返回302碼的目標(biāo)ip上-》瀏覽器-》根據(jù)302的ip重新發(fā)起請求=》真實主機-》響應(yīng)-》瀏覽器 2)基于DNS域名解析服務(wù)負(fù)載均衡 DBS負(fù)載均衡一般DNS解析服務(wù)商都會有提供,瀏覽器請教域名時,,域名下配置了多臺真實的主機地址,,瀏覽器訪問域名時,DNS解析找到可服務(wù)的主機IP進行服務(wù),,把處理結(jié)果返回給用戶 優(yōu)點:DBS負(fù)載發(fā)生在域名,,基于網(wǎng)絡(luò)層,可以根據(jù)用戶的地理位置選取離用戶最近的主機,,加速用戶訪問速度 缺點:如果有某些服務(wù)主機掛了,,DNS因為是基于緩存主機服務(wù)的,更新不及時,,有可能訪問還是掛掉的主機,,而且控制權(quán)在第三方,服務(wù)商難干預(yù),。 一般大型網(wǎng)站都會采取該方式作為一級負(fù)載均衡,,DNS負(fù)載的主機IP一般是服務(wù)商的負(fù)載均衡主機,再通過負(fù)載均衡主機進行真實web服務(wù)分發(fā) 瀏覽器=》DNS域名解析,,并找到真實ip-》響應(yīng)-》瀏覽器 3)反向代理負(fù)載均衡(一般采用nginx或apache) 軟伯負(fù)載均衡一般作為分發(fā)器,,所有服務(wù)請教經(jīng)過應(yīng)用軟件類nginx,nginx根據(jù)請教進行不同真實主機服務(wù)的分發(fā)請求來達到負(fù)載均衡的目標(biāo) 優(yōu)點:配置簡單,、可以根據(jù)多種策略進行負(fù)載均衡,,成本低,效率介于HTTP重定向之間好 缺點:負(fù)載均衡服務(wù)器會成為請求的瓶頸,,需要對負(fù)載均衡應(yīng)用服務(wù)進行集成搭建,。 目前網(wǎng)站采用該方式較多 瀏覽器-》負(fù)載均衡服務(wù)-》找到真實主機ip-》發(fā)送請教-》真實主機響應(yīng)-》負(fù)載均衡服務(wù)-》響應(yīng)-》瀏覽器 4)IP負(fù)載均衡(在內(nèi)核進程完成數(shù)據(jù)分發(fā),,性能比反向代理好) 在網(wǎng)絡(luò)層修改目標(biāo)ip進行負(fù)載均衡 瀏覽器請求-》網(wǎng)關(guān)服務(wù)器-》修改目標(biāo)ip地址-》真實地址處理-》響應(yīng)-》網(wǎng)關(guān)服務(wù)器-》響應(yīng)-》瀏覽器 優(yōu)點:網(wǎng)絡(luò)層修改目標(biāo)ip進行負(fù)載均衡,性能比反向代理好 缺點:修改ip目標(biāo)地址時需要把源地址改成本身網(wǎng)關(guān)ip,,這樣目標(biāo)主機才能正常返回數(shù)據(jù)給網(wǎng)關(guān)服務(wù)器,,集群最大的吞吐量受限于負(fù)載均衡器的網(wǎng)卡帶寬。 5)鏈路層級的負(fù)載均衡 多臺服務(wù)器地址改成與負(fù)載均衡網(wǎng)關(guān)同樣的虛擬ip,,客戶端訪問網(wǎng)關(guān)服務(wù)器,,網(wǎng)關(guān)服務(wù)器修改mac地址,轉(zhuǎn)到真實的服務(wù)mac主機上,,mac因為虛擬ip和實際訪問的ip一樣,,可以能正常處理瀏覽器的請求 優(yōu)點:少一層的請求響應(yīng)返回操作,請求效率高,,擁有nginx服務(wù)器的負(fù)載效果,,但減少了數(shù)據(jù)收集返回一層請求 目前l(fā)inux下比較知名的開源負(fù)載均衡器:LVS(linux virtiual server) 瀏覽器-》負(fù)載均衡服務(wù)-》修改成對應(yīng)主機mac地址-》真實主機響應(yīng)-》瀏覽器 2、負(fù)載均衡的原因及實現(xiàn)算法 1)輪詢 2)加權(quán)輪詢 3)隨機數(shù) 4)最少連接數(shù) 5)源地址散列(ip hash/IP粘滯) |
|