1. 程式人生 > >Nginx 負載均衡反向代理

Nginx 負載均衡反向代理

一、叢集介紹以及常用叢集硬體知識介紹及選型

1、負載均衡以及高可用叢集的作用
1)、負載均衡叢集的作用:
a、分擔使用者訪問請求及資料流量(負載均衡)
b、保持業務連續性,即 7x24 小時服務(高可用性)
c、應用於 web 業務及資料庫從庫等伺服器的業務。
負載均衡叢集典型的開源軟體:LVS、Nginx、Haproxy
2)、高可用叢集的作用:
a、當一臺機器宕機時,另外一臺機器接管宕機的機器的 IP 資源和服務資源,提供服務。
b、常用於不易實現負載均衡的應用,比如負載均衡器,主資料庫、主儲存對之間。
高可用叢集常用的開源軟體:Keepalived、Heartbeat(架構師班講)
2、對於叢集軟硬體產品如何選型


a、當企業業務重要,技術力量又薄弱,並且希望出錢購買產品及獲取剛好的服務時,可以選擇硬體負載均衡產品,如 F5、Netscaler、Radware 等,此類公司多為傳統的大型非網際網路企業,如銀行、證券、金融、寶馬、賓士等。(硬體負載均衡伺服器價格幾十萬,好的上百萬)
b、對於入口網站來說,大多會並用軟體及硬體產品來分擔單一產品的風險,如淘寶、騰訊、新浪等。融資了的企業會購買企業硬體產品,如趕集等網站。
c、中小型網際網路企業,由於起步階段無利潤可賺或利潤很低,會希望通過使用開源免費的方案來解決問題,因此會僱傭專門的運維人員進行維護。例如,51CTO 等。
相比較而言,商業的負載均衡產品成本高,效能好,更穩定,缺點是不能二次開發,開源的負載均衡軟體對運維人員的能力要求較高,如果運維及開發能力強,那麼開源軟體的負載均衡是不錯的選擇,目前的網際網路行業更偏向使用開源的負載均衡軟體。
Nginx 負載均衡反向代理

Netscaler 負載均衡產品
Nginx 負載均衡反向代理
F5 負載均衡產品

二、Nginx 負載均衡

正向代理:代理代替區域網內的使用者去訪問外部站點資源
反向代理:代理代替使用者去訪問後面的 web 節點或者應用伺服器
1、實現 nginx 負載均衡的元件模組有兩個,見下表:
Nginx 負載均衡反向代理