×

面試必問(wèn):負(fù)載平衡的3種分類

分類:云服務(wù)資訊 編輯:聊聊云計(jì)算 瀏覽量:258
2021-03-12 11:25:22
在業(yè)務(wù)初期,我們一般會(huì)先使用單臺(tái)服務(wù)器對(duì)外提供服務(wù)。隨著業(yè)務(wù)流量越來(lái)越大,單臺(tái)服務(wù)器無(wú)論如何優(yōu)化,無(wú)論采用多好的硬件,總會(huì)有性能天花板,當(dāng)單服務(wù)器的性能無(wú)法滿足業(yè)務(wù)需求時(shí),就需要把多臺(tái)服務(wù)器組成集群系統(tǒng)提高整體的處理性能。
基于上述需求,我們要使用統(tǒng)一的流量入口來(lái)對(duì)外提供服務(wù),本質(zhì)上就是需要一個(gè)流量調(diào)度器,通過(guò)均衡的算法,將用戶大量的請(qǐng)求流量均衡地分發(fā)到集群中不同的服務(wù)器上。這其實(shí)就是我們今天要說(shuō)的負(fù)載均衡。
廣義上的負(fù)載均衡器大概可以分為 3 類,包括:DNS 方式實(shí)現(xiàn)負(fù)載均衡、硬件負(fù)載均衡、軟件負(fù)載均衡。
一、DNS 實(shí)現(xiàn)負(fù)載均衡
這個(gè)負(fù)載均衡時(shí)通過(guò)DNS來(lái)的,因?yàn)镈NS解析同一個(gè)域名可以返回不同的ip。所以例如哈爾濱的人訪問(wèn)百度就返回距離他近的那個(gè)機(jī)房的IP,海南的人訪問(wèn)百度就返回距離他近的那個(gè)機(jī)房的IP。所以主要是用來(lái)實(shí)現(xiàn)地理級(jí)別的負(fù)載均衡。
DNS 實(shí)現(xiàn)負(fù)載均衡是最基礎(chǔ)簡(jiǎn)單的方式。一個(gè)域名通過(guò) DNS 解析到多個(gè) IP,每個(gè) IP 對(duì)應(yīng)不同的服務(wù)器實(shí)例,這樣就完成了流量的調(diào)度,雖然沒(méi)有使用常規(guī)的負(fù)載均衡器,但實(shí)現(xiàn)了簡(jiǎn)單的負(fù)載均衡功能。
通過(guò) DNS 實(shí)現(xiàn)負(fù)載均衡的方式,最大的優(yōu)點(diǎn)就是實(shí)現(xiàn)簡(jiǎn)單,成本低,無(wú)需自己開發(fā)或維護(hù)負(fù)載均衡設(shè)備,不過(guò)存在一些缺點(diǎn):
1、服務(wù)器故障切換延遲大,服務(wù)器升級(jí)不方便。我們知道 DNS 與用戶之間是層層的緩存,即便是在故障發(fā)生時(shí)及時(shí)通過(guò) DNS 修改或摘除故障服務(wù)器,但中間經(jīng)過(guò)運(yùn)營(yíng)商的 DNS 緩存,且緩存很有可能不遵循 TTL 規(guī)則,導(dǎo)致 DNS 生效時(shí)間變得非常緩慢,有時(shí)候一天后還會(huì)有些許的請(qǐng)求流量。
2、流量調(diào)度不均衡,粒度太粗。DNS 調(diào)度的均衡性,受地區(qū)運(yùn)營(yíng)商 LocalDNS 返回 IP 列表的策略有關(guān)系,有的運(yùn)營(yíng)商并不會(huì)輪詢返回多個(gè)不同的 IP 地址。另外,某個(gè)運(yùn)營(yíng)商 LocalDNS 背后服務(wù)了多少用戶,這也會(huì)構(gòu)成流量調(diào)度不均的重要因素。
3、流量分配策略太簡(jiǎn)單,支持的算法太少。DNS 一般只支持 rr 的輪詢方式,流量分配策略比較簡(jiǎn)單,不支持權(quán)重、Hash 等調(diào)度算法。
4、DNS 支持的 IP 列表有限制。我們知道 DNS 使用 UDP 報(bào)文進(jìn)行信息傳遞,每個(gè) UDP 報(bào)文大小受鏈路的 MTU 限制,所以報(bào)文中存儲(chǔ)的 IP 地址數(shù)量也是非常有限的,阿里 DNS 系統(tǒng)針對(duì)同一個(gè)域名支持配置 10 個(gè)不同的 IP 地址。
實(shí)際上生產(chǎn)環(huán)境中很少使用這種方式來(lái)實(shí)現(xiàn)負(fù)載均衡,畢竟缺點(diǎn)很明顯。文中之所以描述 DNS 負(fù)載均衡方式,是為了能夠更清楚地解釋負(fù)載均衡的概念。
像 BAT 體量的公司一般會(huì)利用 DNS 來(lái)實(shí)現(xiàn)地理級(jí)別的全局負(fù)載均衡,實(shí)現(xiàn)就近訪問(wèn),提高訪問(wèn)速度,這種方式一般是入口流量的基礎(chǔ)負(fù)載均衡,下層會(huì)有更專業(yè)的負(fù)載均衡設(shè)備實(shí)現(xiàn)的負(fù)載架構(gòu)。
二、硬件負(fù)載均衡
硬件負(fù)載均衡就是用一個(gè)硬件一個(gè)基礎(chǔ)網(wǎng)絡(luò)設(shè)備,類似我們的交換機(jī)啊這樣的硬件,來(lái)實(shí)現(xiàn)負(fù)載均衡。常見的硬件有F5、A10。
這類設(shè)備性能強(qiáng)勁、功能強(qiáng)大,但價(jià)格非常昂貴,一般只有土豪公司才會(huì)使用此類設(shè)備,中小公司一般負(fù)擔(dān)不起,業(yè)務(wù)量沒(méi)那么大,用這些設(shè)備也是挺浪費(fèi)的。
硬件負(fù)載均衡的優(yōu)點(diǎn):
功能強(qiáng)大:全面支持各層級(jí)的負(fù)載均衡,支持全面的負(fù)載均衡算法。
性能強(qiáng)大:性能遠(yuǎn)超常見的軟件負(fù)載均衡器。
穩(wěn)定性高:商用硬件負(fù)載均衡,經(jīng)過(guò)了良好的嚴(yán)格測(cè)試,經(jīng)過(guò)大規(guī)模使用,穩(wěn)定性高。
安全防護(hù):還具備防火墻、防 DDoS 攻擊等安全功能,以及支持 SNAT 功能。
硬件負(fù)載均衡的缺點(diǎn)也很明顯:
價(jià)格貴;
擴(kuò)展性差,無(wú)法進(jìn)行擴(kuò)展和定制;
調(diào)試和維護(hù)比較麻煩,需要專業(yè)人員。
三、軟件負(fù)載均衡
軟件負(fù)載均衡是最常見的,大小公司都需要用到它。
軟件負(fù)載均衡是通過(guò)負(fù)載均衡功能的軟件來(lái)實(shí)現(xiàn)負(fù)載均衡,常見的軟件有LVS、Nginx、HAProxy。
軟件負(fù)載負(fù)載均衡又分四層和七層負(fù)載均衡,四層負(fù)載均衡就是在網(wǎng)絡(luò)層利用IP地址端口進(jìn)行請(qǐng)求的轉(zhuǎn)發(fā),基本上就是起個(gè)轉(zhuǎn)發(fā)分配作用。而七層負(fù)載均衡就是可以根據(jù)訪問(wèn)用戶的HTTP請(qǐng)求頭、URL信息將請(qǐng)求轉(zhuǎn)發(fā)到特定的主機(jī)。LVS為四層負(fù)載均衡。Nginx、HAProxy可四可七。
軟件負(fù)載均衡的優(yōu)點(diǎn)在于便宜而且簡(jiǎn)單靈活,就買個(gè)主機(jī),裝下軟件,配置一下就能用了,配置也很簡(jiǎn)單對(duì)于一般小型企業(yè),或者并發(fā)量不高的企業(yè)來(lái)說(shuō)就夠用了。而且在高峰期時(shí)容易擴(kuò)容。
新網(wǎng)負(fù)載平衡雙機(jī)架構(gòu),定時(shí)對(duì)后端服務(wù)進(jìn)行健康檢查,自動(dòng)屏蔽異常實(shí)例,保障業(yè)務(wù)連續(xù)性;更低的產(chǎn)品價(jià)格保障高性價(jià)比,多達(dá)6種型號(hào)供您選擇,匹配不同的業(yè)務(wù)情景;分鐘級(jí)部署,控制臺(tái)簡(jiǎn)潔易用,僅需幾步就可完成變配續(xù)費(fèi),實(shí)現(xiàn)靈活選擇和輕松管理:http://www.xinnet.com/cs/slb.html


聲明:免責(zé)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認(rèn)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請(qǐng)發(fā)

送郵件至:operations@xinnet.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。本站原創(chuàng)內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)

需注明出處:新網(wǎng)idc知識(shí)百科

免費(fèi)咨詢獲取折扣

Loading