nginx之負載均衡
阿新 • • 發佈:2021-08-14
負載均衡:
客戶端傳送多個請求到伺服器,伺服器處理請求,有一些可能要與資料庫
進行互動,伺服器處理完畢後,再將結果返回給客戶端。這種架構模式對
於早期的系統相對單一,併發請求相對較少的情況下是比較適合的,成本
也低。但是隨著資訊數量的不斷增長,訪問量和資料量的飛速增長,以及
系統業務的複雜度增加,這種架構會造成伺服器相應客戶端的請求日益緩
慢,併發量特別大的時候,還容易造成伺服器直接崩潰。很明顯這是由於
伺服器效能的瓶頸造成的問題,那麼如何解決這種情況呢?我們首先想到
的可能是升級伺服器的配置,比如提高CPU執行頻率,加大記憶體等提高機
器的物理效能來解決此問題,但是我們知道摩爾定律的日益失效,硬體的
效能提升已經不能滿足日益提升的需求了。最明顯的一個例子,天貓雙十
一當天,某個熱銷商品的瞬時訪問量是極其龐大的,那麼類似上面的系統
架構,將機器都增加到現有的頂級物理配置,都是不能夠滿足需求的。那
麼怎麼辦呢?
上面的分析我們去掉了增加伺服器物理配置來解決問題的辦法,也就是說
縱向解決問題的辦法行不通了,那麼橫向增加伺服器的數量呢?這時候集
群的概念產生了,單個伺服器解決不了,我們增加伺服器的數量,然後將
請求分發到各個伺服器上,將原先請求集中到單個伺服器上的情況改為將
求分發到多個伺服器上,將負載分發到不同的伺服器,也就是我們所說的
負載均衡。