Nginx負載均衡配置實例
隨著互聯網信息的爆炸性增長,負載均衡(load balance)已經不再是一個很陌生的話題,
顧名思義,負載均衡即是將負載分攤到不同的服務單元,既保證服務的可用性,又保證響應 足夠快,給用戶很好的體驗。
快速增長的訪問量和數據流量催生了各式各樣的負載均衡產品,很多專業的負載均衡硬件提供了很好的功能,但卻價格不菲,這使得負載均衡軟件大受歡迎
nginx就是其中的一個,在linux下有Nginx、LVS、Haproxy等等服務可以提供負載均衡服務,而且Nginx提供了幾種分配方式(策略)。
nginx分配服務器策略:第一種輪詢(默認) 每個請求按時間順序逐一分配到不同的后端服務器,如果后端服務器 down掉,能自動剔除。
第二種 weight weight代表權重默認為1,權重越高被分配的客戶端越多。
第三種 ip_hash 每個請求按訪問 ip的hash結果分配,這樣每個訪客固定訪問一個后端服務器。
第四種 fair(第三方) 按后端服務器的響應時間來分配請求,響應時間短的優先分配。
實現案例:1、實現效果瀏覽器地址欄輸入地址 http://192.168.200.130/test/a.html
自動請求8080和8081兩臺服務器的a.html頁面
2、準備工作(1)準備兩臺 tomcat服務器,一臺端口為8080,一臺端口為8081。
(2)在兩臺tomcat里面的webapps目錄中,創建名稱是test文件夾,在test文件夾中創建 頁面 a.html,用于測試。
修改完配置后,重啟nginx。
在瀏覽器中輸入//192.168.200.130/test/a.html ,多次刷新,便可以看到每次請求的是不同的Tomcat服務器:
這個效果就是nginx實現的負載均衡,將請求轉發到不同的服務器處理。
4、切換不同訪問策略使用權重策略,修改weight的值,將請求根據權重分配到不同的服務器上。
修改完配置后,重啟nginx。
刷新瀏覽器,可以看到,服務器1連續被訪問兩次,服務器2只會被訪問一次。
使用ip_hash策略,該策略代表一個IP地址的請求都會轉發到一臺服務器上處理。
具體配置如下:
修改完配置后,重啟nginx。
刷新瀏覽器,可以看到,所有的請求都被服務器2處理。
這樣每個訪客固定訪問一個后端服務器,可以解決 session的問題。
使用fair策略,按后端服務器的響應時間來分配請求,響應時間短的優先分配。
這種方式需要單獨安裝fair相關的模塊,因為fair不是nginx自帶的。
到此這篇關于Nginx負載均衡配置實例的文章就介紹到這了,更多相關Nginx負載均衡內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
