Nginx ロードバランシングの設定方法

Nginx ロードバランシングの設定方法

Nginx 負荷分散構成

nginxを使用して負荷分散を構成するのも比較的簡単です。

まず、httpブロックに仮想ドメイン名に対応するアドレスを設定します。

# アップストリームの負荷分散 myserver {
 サーバー 127.0.0.1:8080;
 サーバー 127.0.0.1:8082;
}

次にサーバーブロックでリスナーを設定します

サーバー{
 9000を聴く;
 server_name ローカルホスト;

 位置 / {
  ルートhtml;
  インデックス index.html index.htm;
  # 上記のアップストリームで設定された名前 proxy_pass http://myserver に対応します。
  
  ### 以下は、懸念される軽微な項目です。proxy_set_header Host $host;
  プロキシメソッド POST;

   #転送されないヘッダーフィールドを指定します proxy_hide_header Cache-Control;

   #転送ヘッダーフィールドを指定します proxy_pass_header Server-IP;

   # パッケージ本体を転送するかどうか proxy_pass_request_body on | off;

   # ヘッダーを転送するかどうか proxy_pass_request_headers on | off;

   # 表示/非表示 URI、アップストリーム リダイレクトが発生したときに Nginx が URI を同期的に変更するかどうか
  proxy_redirect オン | オフ;
 }
}

このように、ポート 9000 を使用してサーバーにアクセスすると、ポート 8080 と 8082 にロード呼び出しが行われます。

Nginx 負荷分散戦略

ポーリング(デフォルト)

時系列順に 1 つずつ異なるサーバーに配布します。バックエンド サーバーがクラッシュすると、自動的に削除されます。

重さ

重みは重みを表します。デフォルト値は1です。重みが大きいほど、より多くのリクエストが割り当てられます。

# アップストリームの負荷分散 myserver {
 サーバー 127.0.0.1:8080 重み=1;
 サーバー 127.0.0.1:8082 重み=2;
}

ip_ハッシュ

各リクエストはアクセスされた IP アドレスに従ってハッシュされるため、各訪問者は特定のサーバーにアクセスし、セッションの問題を解決できます。

# アップストリームの負荷分散 myserver {
  ip_ハッシュ;
 サーバー 127.0.0.1:8080;
 サーバー 127.0.0.1:8082;
}

公正(第三者)

リクエストの応答時間に応じて割り当て、どのサーバーが早く応答するかを決定

上記は、Nginx で負荷分散を構成する方法の詳細です。Nginx で負荷分散を構成する方法の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • Nginx ロードバランシングの 4 つの構成例
  • Nginx の負荷分散構成、ダウンタイム発生時の自動切り替えモード
  • Nginx 負荷分散構成の簡単な構成方法
  • nginx のロードバランシングを設定する 5 つの方法
  • Nginx クラスタの負荷分散構成プロセスの分析
  • Nginx のシンプルな負荷分散構成例
  • Linuxシステム構成の詳細な説明 nginx ロードバランシング
  • nginx ロードバランシングの簡単な設定方法
  • 非常に詳細な nginx 負荷分散構成

<<:  HTML ベース URL タグ

>>:  MySQLからOracleへのリアルタイム同期ソリューションの詳細な説明

推薦する

chkconfig および systemctl コマンドを使用して Linux サービスを有効または無効にする方法

これは Linux 管理者にとって重要な (そして素晴らしい) トピックなので、誰もが Linux ...

タイムライン効果を実現するCSS3

最近、コンピューターの電源を入れたところ、Geek Academy が新規ユーザーに 1 か月の無料...

MySQL 8.0.19 インストールチュートリアル

公式サイトからインストールパッケージをダウンロードします: mysql-8.0.19-linux-g...

MySQL 5.7.10 インストール ドキュメント チュートリアル

1. 依存パッケージをインストールする yum -y インストール gcc-c++ ncurses-...

MySQL でデータベースを作成した後、ユーザー 'root'@'%' によるデータベース 'xxx' へのアクセスが拒否される問題を解決する

序文最近、仕事で問題が発生しました。データベースを作成した後、データベースに接続するときにエラーが発...

ウェブページのグリッドデザインを考える

<br />元のアドレス: http://andymao.com/andy/post/8...

CentOS 7 で RPM パッケージを使用して MySQL 5.7.9 をインストールするチュートリアル

MySQL 5.7.9 のインストールチュートリアルを録画してみんなと共有しましょう環境の紹介:オペ...

MySQL トランザクション分析

取引トランザクションはビジネス ロジックの基本単位です。各トランザクションは一連の SQL ステート...

MySQL ソートの原則とケース分析

序文ソートはデータベースの基本的な機能であり、MySQL も例外ではありません。ユーザーは、Orde...

HTMLの基礎 HTMLの構造

HTML ファイルとは何ですか? HTML は Hyper Text Markup Language...

IE 8/Chrome/Firefox と互換性のあるコメント返信ポップアップマスク効果実装アイデア

平日はニュースに注目して、テンセントをよく閲覧しています。しかし、コメントへの返信はほとんど見られま...

Linuxでブーストライブラリをインストールするための完全な手順

序文Boost ライブラリは、標準ライブラリのバックアップとして機能し、C++ 標準化プロセスの開発...

divの背景を透明に設定する方法の例

div の背景を透明にする一般的な方法は 2 つあります。 1. 不透明度属性を 0 ~ 1 の値に...

div の幅が width:100% に設定されていて、パディングまたはマージンが親要素を超えてしまう問題の解決方法

序文この記事では、div の幅を 100% に設定し、親要素を超えてパディングまたはマージンを設定す...

Windows Server 2008 のサーバー パフォーマンス監視に関するチュートリアル

次に、ログ管理、ログのアーカイブ、ログのトラブルシューティング、イベントの転送と収集のためのコンピュ...