面試官 說說你知道的幾種負載均衡分類

2021-09-24 08:15:20 字數 1575 閱讀 9106

負載均衡其實就是任務的分發,使得任務能按照你的預想分配到各個計算單元上,它能提高服務對外的效能,避免單點失效場景。這裡要注意的一點是雖說叫負載均衡,但是有時候我們的分配演算法就是不是均衡的。

比如配個nginx,做兩台伺服器的負載均衡,一台機子比較老是以前的配置比較低,一台是新機子配置高,那我們的分配權重可能就是3-7分,而不是五五開。所以是預想分配。但是業界還是習慣按照負載均衡來表達這個任務分配機制。

負載均衡常見的有:軟體負載均衡、硬體負載均衡、dns負載均衡。

軟體負載均衡是最常見的,大小公司都需要用到它。

軟體負載均衡是通過負載均衡功能的軟體來實現負載均衡,常見的軟體有lvs、nginx、haproxy

軟體負載負載均衡又分四層和七層負載均衡,四層負載均衡就是在網路層利用ip位址埠進行請求的**,基本上就是起個**分配作用。而七層負載均衡就是可以根據訪問使用者的http請求頭、url資訊將請求**到特定的主機。 lvs為四層負載均衡。nginx、haproxy可四可七。

nginx是萬級別的,通常只用它來做七層負載,lvs來做四層負載。lvs是十萬級別的,所以如果頂不住常見的也有這樣的搭配。

軟體負載均衡的優點在於便宜而且簡單靈活,就買個主機,裝下軟體,配置一下就能用了,配置也很簡單對於一般小型企業,或者併發量不高的企業來說就夠用了。而且在高峰期時容易擴容。

缺點在於(和硬體負載均衡比)效能一般,流量很大的企業就用軟體負載均衡頂不住,沒防火牆或者防ddos攻擊等安全性功能

硬體負載均衡就是用乙個硬體乙個基礎網路裝置,類似我們的交換機啊這樣的硬體,來實現負載均衡。 常見的硬體有f5、a10。

優點就是:

1.功能強大,支援全域性負載均衡提供全面的複雜均衡演算法。

2.效能強悍,支援百萬以上的併發。

3.提供安全功能,例如防火牆,防ddos攻擊等。

這麼一聽我靠這麼吊誰不用啊趕緊買個。別急我們下面個。 這網上找的,**公升序了最低也得15萬,高的我看到有90萬的。

缺點:1.貴!這算是它最大的缺點了。為了安全通常還得一主一備,嘖嘖。

2.擴充套件能力差,當訪問量突增的時候超過限度不能動態擴容。

優點就是:

1.簡單,交給dns伺服器處理咱們都不用幹活

2.因為是就近訪問可以減少響應的時間,提公升訪問速度

缺點:1.dns有快取而且快取時間較長,所以當機房遷移等需要修改dns配置的時候,使用者可能還會訪問之前的ip,導致訪問失敗。

2.擴充套件能力差,因為運營商管理控制的,由不得我們定製或者擴充套件。

3.比較笨,不能區分伺服器之間的差異,也不能反映伺服器的當前執行狀態

dns負載均衡是地理級別的,硬體負載均衡對應的是集群級別的,軟體負載均衡對應的是機器級別的。

不過一般而言像小公司或者流量不大的公司都是只需要軟體負載均衡,也可能lvs都不需要上所以是按實際情況刪減上圖的一些東西。真正公司發展起來使用者量激增才會考慮多機房和上硬體,畢竟是需求的驅使和不差錢了。

如有錯誤歡迎指正!

有相關面試高階(分布式、效能調優、經典書籍pdf)資料等待領取

面試官 你能說說mysql的幾種日誌檔案嗎?

mysql底層是有三種日誌檔案 undo redo binlog,這裡我們是以innodb儲存引擎為例的,為什麼要牽扯去儲存引擎呢,因為undo redo是屬於innodb儲存引擎的,binlog才是屬於mysql server的日誌檔案 這裡我們通過sql語句 update student nam...

面試你的面試官

大多數面試都是面試官從簡歷,學歷,經歷,技術,為人上對你 乙個求職者 一番拷問,以確定是否是他們想要的人。而這些對找到適合你的工作的確沒什麼用。某公司某職位需要你,而某公司某職位不一定是你想要的!如果你想找到適合你的公司 如果你想找到適合你的職位 記得面試你的面試官,沒錯!做出很重要的職業決定前,面...

面試官 說說var let const之間的區別

故心故心故心故心小故衝啊 在es5中,頂層物件的屬性和全域性變數是等價的,用var宣告的變數既是全域性變數,也是頂層變數 注意 頂層物件,在瀏覽器環境指的是window物件,在 node 指的是global物件 var a 10 console.log window.a 10 使用var宣告的變數存...