Nginx ustreamの5つの重み付けの分配方式

4335 ワード

住所:Nginx ustreamの5つの重み付けの分配方式
 
1、ポーリング(デフォルト)
各要求は時間順に別々のバックエンドサーバーに割り当てられます。バックエンドサーバーがダウンすれば自動的に削除できます。
2、weightはポーリング確率を指定し、weightとアクセス比率は比例しており、バックエンドサーバーの性能が不均一な場合に使用する。たとえば:
upstream backend {
  server 192.168.0.14 weight=10;
  server 192.168.0.15 weight=10;
}
   
3、ip_hashの各要求は、アクセスipのhashの結果によって割り当てられます。このように、各訪問者は一つのバックエンドサーバに固定的にアクセスし、sessionの問題を解決することができます。たとえば:
upstream backend {
  ip_hash;
  server 192.168.0.14:88;
  server 192.168.0.15:80;
}
 
4、fair(第三者)は、バックエンドサーバの応答時間に応じて要求を割り当て、応答時間が短い優先割り当てを行う。
upstream backend {
  server server1.linuxany.com;
  server server2.linuxany.com;
  fair;
}
 
5、url_sh(第三者)
urlにアクセスしたhashの結果に応じて要求を割り当てて、各urlを同一のバックエンドサーバに向けるようにして、バックエンドサーバがキャッシュしている時に有効です。
例:up streamにhash文を入れ、server文にweightなど他のパラメータは書き込みできません。hash_methodはhashアルゴリズムを使用しています。
upstream backend {
  server squid1:3128;
  server squid2:3128;
  hash $request_uri;
  hash_method crc32;
}
 
铅負荷均衡設備のIp及び設備状態を定義し、テストを経て、ip_を配置したらhashは負荷サービスのweight、backupなどの状態を設定できません。
upstream backend{
  ip_hash;
  server 127.0.0.1:9090 down;
  server 127.0.0.1:8080 weight=2;
  server 127.0.0.1:6060;
  server 127.0.0.1:7070 backup;
}
 
負荷バランスが必要なserverにproxy_を追加します。パスhttp://bakend/;
各デバイスの状態設定は以下の通りです。
1.down      server       
2.weight    1.weight  ,        。
3.max_fails :            1.        ,  proxy_next_upstream        
4.fail_timeout:max_fails    ,     。
5.backup:       backup  down      ,  backup  。           。
 
nginxは複数セットの負荷バランスを同時に設定し、不要なserverに使用することができます。
clientbody_同前file_Onに設定されているOnは、client postからのデータをファイルに記録してdebugclient(u)を作成します。body_temp_パス設定記録ファイルのディレクトリは最大3階のディレクトリに設定できます。
locationはURLをマッチングします。リダイレクトしたり、新しいプロキシ負荷の均衡をしたりできます。