nginx クラスターのクライアント割り当て戦略

WBOY
リリース: 2016-08-08 09:19:52
オリジナル
932 人が閲覧しました

1. ポーリング (デフォルト)
各リクエストは時系列に 1 つずつ異なるバックエンド サーバーに割り当てられ、バックエンド サーバーがダウンした場合は自動的に削除されます。

upstream backserver {
server 192.168.0.14;
server 192.168.0.15;
}
2. 重みを指定します。
ポーリング確率を指定します。重みはアクセス率に比例し、バックエンドサーバーのパフォーマンスが不均一な場合に使用されます。 。

アップストリームバックサーバー{
サーバー192.168.0.14weight=10;
server 192.168.0.15weight=10;
}
3. IPバインディングip_hash
各リクエストはアクセスIPのハッシュ結果に従って割り当てられるため、各訪問者は固定アクセスバックエンドサーバーはセッションの問題を解決できます。

upstream backserver {
ip_hash;
server 192.168.0.14:88;
server 192.168.0.15:80;
}
4. フェア(サードパーティ)
バックエンドサーバーの応答時間、応答時間に応じてリクエストを割り当てます。短い優先度の割り当て。

アップストリームバックサーバー{
サーバーサーバー1;
サーバーサーバー2;
フェア;
}
5. url_hash (サードパーティ)
各URLが同じバックエンドサーバーに向けられるように、アクセスされたURLのハッシュ結果に従ってリクエストを分散します。エンドサーバーがキャッシュされている場合、より効果的です。

アップストリーム バックサーバー {
serverいかが1:3128;
サーバーsquid2:3128;
hash $request_uri;
hash_method crc32;
}
負荷分散を使用する必要があるサーバーに、

proxy_pass http://backserver/; を追加します。
アップストリーム バックサーバー{
ip_hash;
サーバー 127.0.0.1:9090 ダウン; (ダウンとは、前のサーバーが一時的に負荷に参加していないことを意味します)
サーバー 127.0.0.1:8080 重み = 2 (重みのデフォルトは 1。重量、負荷の重量が大きくなるほど)
server 127.0.0.1:6060;
server 127.0.0.1:7070 バックアップ (他のすべての非バックアップ マシンがダウンしているかビジー状態の場合、バックアップ マシンが要求されます) )
}
max_fails: 許可されるリクエスト失敗回数はデフォルトで 1 です。最大回数を超えると、proxy_next_upstream モジュールで定義されたエラーが返されます
fail_timeout: max_fails 失敗後の一時停止時間

上記は、内容の側面も含めて nginx クラスターのクライアント割り当て戦略を紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート