最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

11月23號(hào)視頻,談?wù)勀銓?duì)負(fù)載均衡的了解【文字版】

2021-11-27 14:01 作者:跟著Mic學(xué)架構(gòu)  | 我要投稿

最近有小伙伴想讓我聊一聊負(fù)載均衡方面的問(wèn)題,我說(shuō),網(wǎng)上有這么多資料了,怎么還需要我來(lái)分享,他說(shuō)網(wǎng)上的很多資料不系統(tǒng),難理解。因此就做了這個(gè)視頻。

關(guān)于負(fù)載均衡,我會(huì)從四個(gè)方面去說(shuō)。

  1. 負(fù)載均衡產(chǎn)生的背景

  2. 負(fù)載均衡的實(shí)現(xiàn)技術(shù)

  3. 負(fù)載均衡的作用范圍

  4. 負(fù)載均衡的常用算法

負(fù)載均衡的誕生背景

在互聯(lián)網(wǎng)發(fā)展早期,由于用戶量較少、業(yè)務(wù)需求也比較簡(jiǎn)單。對(duì)于軟件應(yīng)用,我們只需要一臺(tái)高配的服務(wù)器即可完成業(yè)務(wù)的支撐,這樣的軟件架構(gòu)稱為單體架構(gòu)(展示單體架構(gòu)的圖片)



隨著用戶量的增加,服務(wù)器的請(qǐng)流量也隨之增加,在這個(gè)過(guò)程中單體架構(gòu)會(huì)產(chǎn)生兩個(gè)問(wèn)題。

  1. 軟件的性能逐步下降,訪問(wèn)延遲越來(lái)越高

  2. 容易出現(xiàn)單點(diǎn)故障

為了解決這個(gè)問(wèn)題,我們引入了集群化部署的架構(gòu),也就是把一個(gè)軟件應(yīng)用同時(shí)部署在多個(gè)服務(wù)器上(展示圖片)



架構(gòu)的變化帶來(lái)了兩個(gè)問(wèn)題

  1. 客戶端請(qǐng)求如何均勻的分發(fā)到多臺(tái)目標(biāo)服務(wù)器上?

  2. 如何檢測(cè)目標(biāo)服務(wù)器的健康狀態(tài),使得客戶端請(qǐng)求不向已經(jīng)宕機(jī)的服務(wù)器發(fā)送請(qǐng)求。

為了解決這兩個(gè)問(wèn)題,引入了負(fù)載均衡的設(shè)計(jì),簡(jiǎn)單來(lái)說(shuō),負(fù)載均衡機(jī)制的核心目的是讓客戶端的請(qǐng)求合理均勻的分發(fā)到多臺(tái)目標(biāo)服務(wù)器,由于請(qǐng)求被多個(gè)節(jié)點(diǎn)分發(fā),使得服務(wù)端的性能得到有效的提升。


如何實(shí)現(xiàn)負(fù)載均衡呢?

常見(jiàn)的實(shí)現(xiàn)方案有三種!

  • 基于DNS實(shí)現(xiàn)負(fù)載均衡

  • 基于硬件實(shí)現(xiàn)負(fù)載均衡

  • 基于軟件實(shí)現(xiàn)負(fù)載均衡

先來(lái)說(shuō)一下基于DNS實(shí)現(xiàn)負(fù)載均衡的方式,它的實(shí)現(xiàn)方式比較簡(jiǎn)單,只需要在DNS服務(wù)器上針對(duì)某個(gè)域名做多個(gè)IP映射即可。



它的工作原理是:?當(dāng)用戶通過(guò)域名訪問(wèn)某個(gè)網(wǎng)站時(shí),會(huì)先通過(guò)DNS服務(wù)器進(jìn)行域名解析得到一個(gè)IP地址,DNS服務(wù)器可以隨機(jī)分配一個(gè)IP地址進(jìn)行訪問(wèn),這樣就可以實(shí)現(xiàn)目標(biāo)服務(wù)集群的請(qǐng)求分發(fā)。

除此之外,DNS還可以根據(jù)不同的地域分配就近機(jī)房的IP,比如長(zhǎng)沙的小伙伴,可能會(huì)得到在湖南范圍內(nèi)最近的一個(gè)機(jī)房的IP,在這個(gè)模式下可以實(shí)現(xiàn)「就近原則」實(shí)現(xiàn)請(qǐng)求處理,縮短了通信距離從而提升網(wǎng)站訪問(wèn)效率。


DNS實(shí)現(xiàn)負(fù)載均衡的優(yōu)點(diǎn)是:?配置簡(jiǎn)單,實(shí)現(xiàn)成本低,無(wú)需額外的開發(fā)和維護(hù)。

不過(guò)缺點(diǎn)也很明顯:

由于DNS多級(jí)緩存的特性,當(dāng)我們修改DNS配置之后,會(huì)因?yàn)榫彺鎸?dǎo)致IP變更不及時(shí),從而影響負(fù)載均衡的效果。


第二種,基于硬件實(shí)現(xiàn)負(fù)載均衡

硬件負(fù)載設(shè)備,我們可以簡(jiǎn)單把它理解成一個(gè)網(wǎng)絡(luò)設(shè)備,類似于網(wǎng)絡(luò)交換機(jī),它

  1. 它的性能很好,每秒能夠處理百萬(wàn)級(jí)別的請(qǐng)求,

  2. 支持多種負(fù)載均衡算法,我們可以非常靈活的配置不同的負(fù)載策略

  3. 它還具備防火墻等安全功能。

  4. 硬件負(fù)載是商業(yè)產(chǎn)品,有專門的售后來(lái)支持,所以企業(yè)不需要花精力去做維護(hù)。

F5是比較常見(jiàn)的硬件負(fù)載設(shè)備,由于硬件負(fù)載設(shè)備價(jià)格比較貴,一般應(yīng)用在大型銀行、政府、電信等領(lǐng)域。


第三種,基于軟件實(shí)現(xiàn)負(fù)載均衡

所謂軟件負(fù)載,就是通過(guò)一些開源軟件或者商業(yè)軟件來(lái)完成負(fù)載均衡的功能。常見(jiàn)的軟件負(fù)載技術(shù)有:Nginx、LVS、HAProxy等。

目前互聯(lián)網(wǎng)企業(yè)絕大部分采用的都是軟件負(fù)載,主要原因是:

  1. 免費(fèi),企業(yè)不需要投入較高的成本。

  2. 開源,不同企業(yè)對(duì)于負(fù)載均衡的要求有差異,所以可以基于開源軟件上做二次開發(fā)。

  3. 靈活性較高

這三種方式,沒(méi)有好壞之分,只有是否合適,因此大家可以根據(jù)實(shí)際情況選擇。


負(fù)載均衡的作用范圍

負(fù)載均衡是作用在網(wǎng)絡(luò)通信上,來(lái)實(shí)現(xiàn)請(qǐng)求的分發(fā)。

而在網(wǎng)絡(luò)架構(gòu)中,基于OSI模型,又分為7層網(wǎng)絡(luò)模型



也就是意味著我們可以在網(wǎng)絡(luò)的某些分層上做請(qǐng)求分發(fā)處理,因此根據(jù)這樣一個(gè)特性,對(duì)于負(fù)載均衡的作用范圍又可以分為:

  1. 二層負(fù)載

  2. 三層負(fù)載

  3. 四層負(fù)載

  4. 七層負(fù)載

二層負(fù)載:基于Mac地址來(lái)實(shí)現(xiàn)請(qǐng)求分發(fā),一般采用虛擬Mac的方式實(shí)現(xiàn),服務(wù)器收到請(qǐng)求后,通過(guò)動(dòng)態(tài)分配后端服務(wù)的實(shí)際Mac地址進(jìn)行響應(yīng)從而實(shí)現(xiàn)負(fù)載均衡

三層負(fù)載:基于IP層負(fù)載,一般通過(guò)虛擬IP的方式實(shí)現(xiàn),外部請(qǐng)求訪問(wèn)虛擬IP,服務(wù)器收到請(qǐng)求后根據(jù)后端實(shí)際IP地址進(jìn)行轉(zhuǎn)發(fā)。

四層負(fù)載:?通過(guò)請(qǐng)求報(bào)文中的目標(biāo)地址和端口進(jìn)行負(fù)載,Nginx、F5、LVS等都可以實(shí)現(xiàn)四層負(fù)載。(展示圖片)


七層負(fù)載:?七層負(fù)載是基于應(yīng)用層負(fù)載,也就是服務(wù)器端可以根據(jù)http協(xié)議中請(qǐng)求的報(bào)文信息來(lái)決定把請(qǐng)求分發(fā)到哪個(gè)目標(biāo)服務(wù)器上,比如Cookie、消息體、RequestHeader等。(展示圖片)



?

最后一個(gè),就是負(fù)載均衡的常用算法

所謂負(fù)載均衡算法,就是決定當(dāng)前客戶端請(qǐng)求匹配到目標(biāo)服務(wù)器集群中的具體哪個(gè)節(jié)點(diǎn)。

常見(jiàn)的負(fù)載均衡算法有:

1.輪訓(xùn),也就是多個(gè)服務(wù)器按照順序輪訓(xùn)返回,這樣每個(gè)服務(wù)器都能獲得相同的請(qǐng)求次數(shù)

2.隨機(jī),根據(jù)隨機(jī)算法獲得一個(gè)目標(biāo)服務(wù)地址(就像古時(shí)候皇帝翻牌子),由于該算法具備隨機(jī)性,因此每個(gè)服務(wù)器獲得的請(qǐng)求數(shù)量不一定均等。

3.一致性hash,也就是對(duì)于具有相同hash碼的請(qǐng)求,永遠(yuǎn)發(fā)送到同一個(gè)節(jié)點(diǎn)上。

4.最小連接數(shù),根據(jù)目標(biāo)服務(wù)器的請(qǐng)求數(shù)量來(lái)決定請(qǐng)求分發(fā)的權(quán)重,也就是目標(biāo)服務(wù)集群中,請(qǐng)求更少的節(jié)點(diǎn)將會(huì)獲得更多的請(qǐng)求。這是負(fù)載均衡中比較好的策略,真正能夠?qū)崿F(xiàn)目標(biāo)服務(wù)器的請(qǐng)求均衡。

以上就是關(guān)于負(fù)載均衡相關(guān)的內(nèi)容,當(dāng)然,負(fù)載均衡還有很多值得去挖掘的,比如負(fù)載算法如何實(shí)現(xiàn)?網(wǎng)絡(luò)分層模型的原理等。

對(duì)于網(wǎng)絡(luò)模型這塊,如果有想深度學(xué)習(xí)的同學(xué),在下方留言”想看“,我會(huì)在后續(xù)的內(nèi)容中進(jìn)行整理。


好的,本期的視頻就到這里結(jié)束了,喜歡的朋友記得一鍵三連,加個(gè)關(guān)注,我是頭發(fā)很多的程序員Mic,咱們下期再見(jiàn)。


11月23號(hào)視頻,談?wù)勀銓?duì)負(fù)載均衡的了解【文字版】的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
阜康市| 蒙城县| 长岭县| 宜昌市| 忻州市| 杭锦旗| 奇台县| 奉贤区| 太仆寺旗| 伊川县| 云梦县| 宜城市| 泸溪县| 依安县| 宁津县| 龙泉市| 辉县市| 奉新县| 平遥县| 雷州市| 锦屏县| 都昌县| 东莞市| 巨鹿县| 田阳县| 牙克石市| 咸丰县| 公主岭市| 南溪县| 芮城县| 三河市| 林口县| 新龙县| 桐城市| 祁门县| 定陶县| 三原县| 凭祥市| 将乐县| 济阳县| 蚌埠市|