Nginx應用之負載均衡

2021-09-26 20:01:50 字數 1117 閱讀 9795

負載均衡就是將負載分攤到多個操作單元上執行,從而提高服務的可用性和響應速度,帶給使用者更好的體驗。

1、基於dns的負載均衡

由於在dns伺服器中,可以為多個不同的位址配置相同的名字,最終查詢這個名字的客戶機將在解析這個名字時得到其中乙個位址,所以這種**方式是通過dns服務中的隨機名字解析網域名稱和ip來實現負載均衡。

2、反向**負載均衡(如apache+jk2+tomcat這種組合)

該種**方式與普通的**方式不同,標準**方式是客戶使用**訪問多個外部web伺服器,之所以被稱為反向**模式是因為這種**方式是多個客戶使用它訪問內部web伺服器,而非訪問外部伺服器。

3、基於nat(network address translation)的負載均衡技術(如linux virtualserver,簡稱lvs)

該技術通過乙個位址轉換閘道器將每個外部連線均勻轉換為不同的內部伺服器位址,因此外部網路中的計算機就各自與自己轉換得到的位址上的伺服器進行通訊,從而達到負載均衡的目的。其中網路位址轉換閘道器位於外部位址和內部位址之間,不僅可以實現當外部客戶機訪問轉換閘道器的某一外部位址時可以**到某一對映的內部的位址上,還可使內部位址的計算機能訪問外部網路。

通過nginx的upstream指令可以實現負載均衡,在該指令中,能夠配置負載均衡伺服器組。目前負載均衡有四種典型的配置方式,分別為輪詢方時,權重方式,ip_hash方式以及利用第三方模組的方式。

負載均衡預設設定方式,每個請求按照時間順序逐一分配到不同的後端伺服器進行處理,如果有伺服器宕機,會自動剔除

利用weight指定輪詢的權重比率,與訪問率成正比,用於後端伺服器效能不均的情況

每個請求按訪問的ip的hash結果分配,這樣可以使每個訪客固定訪問乙個後端伺服器,可以解決session共享問題

第三方模組採用fair時,按照每台伺服器的響應時間來分配請求,響應時間短的優先分配

第三方模組採用url_hash時,按照url的hash值來分配

upstream server_group 

server

修改配置檔案如上,設定權重分別為1,2.

訪問即可發現每次請求**至對應伺服器,比例大致為1:2,如果不配置權重,預設1:1,即輪詢。

除了weight引數外,還可以配以下引數:

Nginx實戰應用 負載均衡

本文我們繼續來介紹nginx的實際操作,本文來介紹下nginx的負載均衡的實現。大家看看上面這個負載均衡的結構圖,大家會發現其實和我們上節課講的反向 很像是不是?真實伺服器如果有多個是不是就是我們上面的結構圖了呀?所以什麼事負載均衡呢?其實就是在反向 的基礎上通過各種負載策略將使用者的請求 到對應的...

nginx 負載均衡 Nginx負載均衡策略

nginx提供的負載均衡策略有2種 內建策略和擴充套件策略。內建策略為輪詢 預設 加權輪詢,ip hash,第三方。upstream mysvr1 輪詢 每個請求按照時間順序逐一的分配到每乙個後台伺服器上。如果某台伺服器宕機了,將會自動的剔除宕機的服務。nginx預設就是輪詢其權重都預設為1,伺服器...

使用nginx負載均衡web應用

首先需要在系統上安裝nginx軟體,這裡使用ubuntu的apt來安裝。sudo apt get install nginx安裝完成後,我們首先需要修改乙個ngins的配置。這裡假定我們已經有了個兩個相同的web應用,分別使用的 8081 和 8082 埠。我們通過nginx的8080埠 這兩個we...