1.IPに従って配布2.URLに従って配布3.重み
に従って4.応答時間に従って
リクエストを分散するためのNGINX負荷分散のいくつかの方法
1.ポーリング(デフォルト)
各リクエストは、異なるバックエンドサーバーに時系列で1つずつ割り当てられます。バックエンドサーバーがダウンしている場合は、自動的に削除できます。
2.重み
はポーリング確率を指定し、重みはアクセス率に比例します。アクセス率は、バックエンドサーバーのパフォーマンスが不均一な場合に使用されます。
3. ip_hashの
各要求は、アクセスipのハッシュ結果に従って割り当てられるため、各訪問者はバックエンドサーバーへの固定アクセスを持ち、セッションの問題を解決できます。
4. Fair(サードパーティ)
は、バックエンドサーバーの応答時間に従って要求を割り当て、短い応答時間を優先します。
5. url_hash(サードパーティ)
は、アクセスURLのハッシュ結果に従ってリクエストを配信します。これにより、各URLは同じバックエンドサーバーに送信されます。これは、バックエンドサーバーがキャッシュである場合により効果的です。
upstream www.test1.com {
ip_hash;
server 172.16.125.76:8066 weight=10;
server 172.16.125.76:8077 down;
server 172.16.0.18:8066 max_fails=3 fail_timeout=30s;
server 172.16.0.18:8077 backup;
}
サーバー自体のパフォーマンスの違いと機能に応じて、さまざまなパラメーターコントロールを設定できます。
ダウンとは、負荷が
重すぎるか、負荷に関与しないことを意味します。重量が大きすぎると、負荷が大きくなります。
他のサーバーが
バックアップまたはダウンされると、バックアップサーバーが要求され
ます。一時停止後の時間