ホームページ バックエンド開発 PHPチュートリアル Nginxアップストリームの5つのウェイト割り当て方法を共有

Nginxアップストリームの5つのウェイト割り当て方法を共有

Jul 28, 2016 am 08:26 AM
Backend hash server upstream

1. ポーリング (デフォルト)
各リクエストは時系列に 1 つずつ異なるバックエンド サーバーに割り当てられ、バックエンド サーバーがダウンした場合は自動的に削除されます。
2. Weight
ポーリング確率を指定します。重みはアクセス率に比例し、バックエンドサーバーのパフォーマンスが不均一な場合に使用されます。
例:
次のようにコードをコピーします:
upstream backend {
server 192.168.0.14weight=10;
server 192.168.0.15weight=10;
}
3. 各リクエストは、次のハッシュ結果に従って割り当てられます。アクセスされた IP (次のように) 各訪問者はバックエンド サーバーに固定アクセスできるため、セッションの問題を解決できます。
例:
次のようにコードをコピーします:
upstream backend {
ip_hash;
server 192.168.0.14:88;
server 192.168.0.15:80;
}
4. 応答時間に従ってバックエンドサーバーのリクエストの割り当てでは、応答時間の短いリクエストが優先されます。
次のようにコードをコピーします:
アップストリーム バックエンド {
server server1.linuxany.com;
server server2.linuxany.com;
fair;
}
5. url_hash (サードパーティ)
のハッシュ結果に従ってリクエストを分散します。アクセスされた URL を同じバックエンド サーバーに送信します。バックエンド サーバーがキャッシュされている場合はより効果的です。
例: ハッシュ ステートメントを上流に追加します。重みなどの他のパラメーターは、使用されるハッシュ アルゴリズムです。
次のようにコードをコピーします。 :3128;
hash $request_uri;
hash_method crc32;
}
#負荷分散デバイスの IP とデバイスのステータスを定義します
アップストリーム バックエンド{
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;
}
負荷分散を使用する必要があるサーバーに、
proxy_pass http://bakend/;
各デバイスのステータスを追加しますに設定されます:
1.down 以前のサーバーが当分の間負荷に参加しないことを示します。
2.weight デフォルトは 1 です。重みが大きいほど、負荷の重みが大きくなります。
3.max_fails: 許可されるリクエスト失敗の数のデフォルトは 1 です。最大数を超えると、proxy_next_upstream モジュールによって定義されたエラーが返されます。
4.fail_timeout: max_fails 失敗後の一時停止時間。
5.バックアップ: バックアップ以外の他のすべてのマシンがダウンしているかビジー状態の場合、バックアップ マシンを要求します。したがって、このマシンの圧力は最も少なくなります。
nginx は、未使用のサーバーで使用するために、負荷分散の複数のグループを同時にセットアップすることをサポートしています。
client_body_in_file_only を On に設定すると、クライアント投稿のデータをデバッグ用にファイルに記録できます。
記録ファイルのディレクトリを設定することで、最大 3 レベルのディレクトリを設定できます。リダイレクトするか、新しいプロキシの負荷分散を実行します。
上記は、Nginx アップストリームの 5 つの重み割り当て方法の共有を、関連する内容も含めて紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。


このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPでRedisハッシュ操作を実装する方法 PHPでRedisハッシュ操作を実装する方法 May 30, 2023 am 08:58 AM

PHPでRedisハッシュ操作を実装する方法

Windows サーバーのバックアップをインストール、アンインストール、リセットする方法 Windows サーバーのバックアップをインストール、アンインストール、リセットする方法 Mar 06, 2024 am 10:37 AM

Windows サーバーのバックアップをインストール、アンインストール、リセットする方法

nginxアップストリームでキープアライブを有効にする方法 nginxアップストリームでキープアライブを有効にする方法 May 14, 2023 pm 07:04 PM

nginxアップストリームでキープアライブを有効にする方法

Laravel 開発: Laravel ハッシュを使用してパスワード ハッシュを生成するにはどうすればよいですか? Laravel 開発: Laravel ハッシュを使用してパスワード ハッシュを生成するにはどうすればよいですか? Jun 17, 2023 am 10:59 AM

Laravel 開発: Laravel ハッシュを使用してパスワード ハッシュを生成するにはどうすればよいですか?

Windows Server 2025 プレビュー バージョンがアップデートを歓迎、Microsoft が Insider テスト エクスペリエンスを改善 Windows Server 2025 プレビュー バージョンがアップデートを歓迎、Microsoft が Insider テスト エクスペリエンスを改善 Feb 19, 2024 pm 02:36 PM

Windows Server 2025 プレビュー バージョンがアップデートを歓迎、Microsoft が Insider テスト エクスペリエンスを改善

Microsoft、Windows Server vNext プレビュー バージョン 25335 をリリース Microsoft、Windows Server vNext プレビュー バージョン 25335 をリリース Jan 10, 2024 am 08:49 AM

Microsoft、Windows Server vNext プレビュー バージョン 25335 をリリース

Nginx のバージョン名を変更して Web サーバーを偽装する方法 Nginx のバージョン名を変更して Web サーバーを偽装する方法 May 14, 2023 pm 09:19 PM

Nginx のバージョン名を変更して Web サーバーを偽装する方法

Ubuntu Server 11.04 に GNOME 3 をインストールする手順 Ubuntu Server 11.04 に GNOME 3 をインストールする手順 Dec 31, 2023 pm 03:59 PM

Ubuntu Server 11.04 に GNOME 3 をインストールする手順

See all articles