您好,登錄后才能下訂單哦!
這篇文章給大家介紹Nginx中怎樣實現負載均衡,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
還是圖比較清晰,以下我都用別名稱呼:
PA : 負載均衡服務器/WEB入口服務器/www.mydomain.com P1 : WEB服務器/分身1/192.168.2.3 P2 : WEB服務器/分身2/192.168.2.4 P3 : WEB服務器/分身3/192.168.2.5
PS:首先我們學這個的開始之前吧,不懂防火墻的童鞋們,建議你們把PA、P1、P2、P3的防火墻關閉,盡量不要引起不必要的麻煩。
首先 :PA、P1、P2、P3都安裝了Nginx,不會安裝的可以去官網查看教程:http://www.nginx.cn/install (中文版教程、非常的牛X)
裝完之后哈,我們先找到 PA 的nginx.conf配置文件
在http段加入以下代碼:
upstream servers.mydomain.com { server 192.168.2.3:80; server 192.168.2.4:80; server 192.168.2.5:80; }
當然嘛,這servers.mydomain.com隨便取的。
那么PA的server配置如下:
在http段加入以下代碼:
server{ listen 80; server_name www.mydomain.com; location / { proxy_pass http://servers.mydomain.com; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
那么P1、P2、P3的配置如下:
server{ listen 80; server_name www.mydomain.com; index index.html; root /data/htdocs/www; }
upstream servers2.mydomain.com { server 192.168.2.3:8080; server 192.168.2.4:8081; server 192.168.2.5:8082; } server{ listen 80; server_name www.mydomain.com; location / { proxy_pass http://servers2.mydomain.com; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
那么P1的配置如下:
server{ listen 8080; server_name www.mydomain.com; index index.html; root /data/htdocs/www; }
P2配置:
server{ listen 8081; server_name www.mydomain.com; index index.html; root /data/htdocs/www; }
P3配置:
server{ listen 8082; server_name www.mydomain.com; index index.html; root /data/htdocs/www; }
重啟之后,我們訪問下,恩不錯,確實很厲害。
當我們把一臺服務器給關閉了后。
訪問網址,還是OK的。說明:負載均衡還要懂得修理他(T出泡妞隊營)
當然現在有好幾種方案,我們這次只是講一種。
IP哈希策略
優點:能較好地把同一個客戶端的多次請求分配到同一臺服務器處理,避免了加權輪詢無法適用會話保持的需求。
缺點:當某個時刻來自某個IP地址的請求特別多,那么將導致某臺后端服務器的壓力可能非常大,而其他后端服務器卻空閑的不均衡情況。
nginx的配置也很簡單,代碼如下:
upstream servers2.mydomain.com { server 192.168.2.3:8080; server 192.168.2.4:8081; server 192.168.2.5:8082; ip_hash; }
關于Nginx中怎樣實現負載均衡就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。