{eval=Array;=+count(Array);}
負載均衡的五種策略是什么?實行負載均衡的目的就是讓請求到達不同的服務(wù)器上。一次請求到服務(wù)器之間,有那么多環(huán)節(jié),因此可以實現(xiàn)的方法也有很多種。
負載均衡的五種策略:
1.輪詢(默認)每個請求按時間順序逐一分配到不同的后端服務(wù)器,如果后端服務(wù)器down掉,能自動剔除。
2、指定權(quán)重,指定輪詢幾率,weight和訪問比率成正比,用于后端服務(wù)器性能不均的情況。
3、IP綁定 ip_hash,每個請求按訪問ip的hash結(jié)果分配,這樣每個訪客固定訪問一個后端服務(wù)器,可以解決session的問題。
4、fair(第三方)按后端服務(wù)器的響應(yīng)時間來分配請求,響應(yīng)時間短的優(yōu)先分配。
5、url_hash(第三方)按訪問url的hash結(jié)果來分配請求,使每個url定向到同一個后端服務(wù)器,后端服務(wù)器為緩存時比較有效。
負載均衡實現(xiàn)的方法:
HTTP重定向負載均衡
HTTP重定向負載均衡有一臺重定向服務(wù)器,它也是一臺普通的服務(wù)器,其唯一的功能就是根據(jù)用戶的HTTP請求計算一臺應(yīng)用集群中服務(wù)器的地址,并將此地址寫入HTTP重定向響應(yīng)中返回給用戶。
這種方案實現(xiàn)起來簡單,但是需要瀏覽器請求兩次服務(wù)器才能完成。并且重定向服務(wù)器很容易編程瓶頸,因為一次重定向返回的過程,也是一次標(biāo)準(zhǔn)HTTP請求,如果集群內(nèi)有10臺機器,那HTTP重定向服務(wù)器的流量將是應(yīng)用服務(wù)器的10倍,如果有100臺估計就宕機了,所以伸縮性能受到了很大限制。使用302響應(yīng)碼重定向不利于網(wǎng)站SEO。
DNS域名解析負載均衡
這是利用DNS處理域名解析請求的同時進行負載均衡處理的一種方案。在DNS中配置多個A記錄,每次域名解析請求都會根據(jù)負載均衡算法計算一個不同的IP地址返回。
DNS域名解析負載均衡的優(yōu)點是將負載均衡的工作轉(zhuǎn)交給DNS,省掉了網(wǎng)站管理維護負載均衡服務(wù)器的麻煩,同時還可以使用智能DNS可以基于地理位置或者ISP來做域名解析,用戶將會得到距離最近或者速度最快的一個服務(wù)器地址,這樣可以加快用戶的訪問速度,改善性能。
但是這種方法也有很大的缺點,DNS是多級解析,每一級都會緩存DNS記錄,如果某個服務(wù)器變動了,DNS記錄更新的時間將會很長,這個速度取決于域名服務(wù)商。一般大型網(wǎng)站都會使用DNS域名解析,利用域名解析作為一級負載均衡手段。你可以使用 dig <域名> 的方法查看某個域名的A記錄,你會發(fā)現(xiàn)很多網(wǎng)站會有多條A記錄。
反向代理負載均衡
這種方法就是使用反向代理服務(wù)器,它一般在web服務(wù)器前面,這個位置也正好是負載均衡服務(wù)器的位置,所以大多數(shù)反向代理服務(wù)器同時也提供負載均衡的功能。由于web服務(wù)器不直接對外提供訪問,因此web服務(wù)器不需要使用外部IP,而反向代理服務(wù)器則需要配置雙網(wǎng)卡和內(nèi)部外部兩套IP地址。反向代理服務(wù)器轉(zhuǎn)發(fā)請求是在HTTP協(xié)議層面,因此也叫應(yīng)用層負載均衡,由于應(yīng)用層在七層網(wǎng)絡(luò)模型中的第七層,所以一般也稱為七層負載均衡。優(yōu)點就是和反向代理功服務(wù)器功能集成在一起,部署簡單。缺點是反向代理服務(wù)器是所有請求和響應(yīng)的中轉(zhuǎn)站,其性能可能會成為瓶頸。網(wǎng)絡(luò)層負載均衡這種方法是在網(wǎng)絡(luò)層通過修改請求目標(biāo)地址進行負載均衡,網(wǎng)絡(luò)層在七層網(wǎng)絡(luò)層模型的第四層,所以也叫做四層負載均衡,也叫做IP層負載均衡。請求達到負載均衡服務(wù)器后,由負載均衡服務(wù)器在操作系統(tǒng)內(nèi)核進程獲取網(wǎng)絡(luò)數(shù)據(jù)包,根據(jù)負載均衡算法得到一臺真實web服務(wù)器的地址,然后修改請求的目的地址到這臺真實的web服務(wù)器地址,等到web服務(wù)器處理完成后,響應(yīng)數(shù)據(jù)包回到負載均衡服務(wù)器,再將數(shù)據(jù)包源地址修改為自身的IP(負載均衡服務(wù)器的IP)地址發(fā)送給用戶瀏覽器這里關(guān)鍵在于真實無力web服務(wù)器響應(yīng)數(shù)據(jù)包如何返回給負載均衡服務(wù)器。一種是源地址轉(zhuǎn)換(SNAT),第二種是負載均衡服務(wù)器作為網(wǎng)關(guān)服務(wù)器。網(wǎng)絡(luò)層的負載均衡在內(nèi)核進程完成數(shù)據(jù)轉(zhuǎn)發(fā),有更好的性能。但是由于響應(yīng)請求的流量要經(jīng)過負載均衡服務(wù)器,容易成為瓶頸。
早期的互聯(lián)網(wǎng)應(yīng)用,由于用戶流量比較小,業(yè)務(wù)邏輯也比較簡單,往往一個單服務(wù)器就能滿足負載需求。
隨著互聯(lián)網(wǎng)的流量越來越大,訪問量也就非常大了,并且系統(tǒng)功能也越來越復(fù)雜,那么單臺服務(wù)器就算將性能優(yōu)化得再好,也不能支撐這么大用戶量的訪問壓力了,這個時候就需要使用多臺機器,設(shè)計高性能的集群來應(yīng)對。
負載均衡可將負載(工作任務(wù),訪問請求)進行平衡、分攤到多個操作單元(服務(wù)器,組件)上進行執(zhí)行。是解決高性能,單點故障(高可用),擴展性(水平伸縮)的終極解決方案。ZKEYS系統(tǒng)目前支持負載均衡的自生產(chǎn)。
想了解更多詳情可以前往官網(wǎng)看看:https://www.zkeys.com/?utm_source=qqz
8
回答0
回答2
回答0
回答2
回答6
回答10
回答6
回答0
回答0
回答