nginx負載均衡分配策略有哪些?


nginx負載均衡分配策略有哪些?

 

答:

1、輪詢(默認,不用在upstream中配置)方式

2、weight(權重)

當指定的服務器的權重參數,權重占比為負載均衡決定的一部分。權重大負載就大。

upstream myapp1 {

       server srv1.example.com weight=3;

       server srv2.example.com;

       server srv3.example.com;

   }

3、ip_hash(訪問ip)

每個請求按訪問ip的hash結果分配,這樣每個訪客固定訪問一個后端服務器,可以解決session的問題。但如果這個后端服務器故障之后,分配到別的服務的時候還是有session問題。

upstream favresin{

     ip_hash;

     server 10.0.0.10:8080;

     server 10.0.0.11:8080;

}

4、least_conn(最少連接數)

在一些要求需要更長的時間才能完成的應用情況下, 最少連接可以更公平地控制應用程序實例的負載。使用最少連接負載均衡,nginx不會向負載繁忙的服務器上分發請求,而是將請求分發到負載低的服務器上。

upstream myapp1 {

       least_conn;

       server srv1.example.com;

       server srv2.example.com;

       server srv3.example.com;

   }

 

5、fair(第三方)

按后端服務器的響應時間來分配請求,響應時間短的優先分配。與weight分配策略類似。

upstream myapp1{    

     server 10.0.0.10:8080;

     server 10.0.0.11:8080;

     fair;

}

6、url_hash(第三方)

按訪問url的hash結果來分配請求,使每個url定向到同一個后端服務器,后端服務器為緩存時比較有效。

例如:http://localhost:18082/systems/index.html#http://localhost:18080/systems/myIndex,nagix會根據url中的hash(http://localhost:18080/systems/myIndex)指派到同一個服務器

upstream your.website.name{  

server 10.0.0.10:8080;

server 10.0.0.11:8080;

hash $request_uri;  

}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM