ホームページ > 運用・保守 > Nginx > nginx をロードバランサーとして構成する方法

nginx をロードバランサーとして構成する方法

(*-*)浩
リリース: 2019-11-20 09:53:38
オリジナル
9221 人が閲覧しました

nginx をロードバランサーとして構成する方法

##1. ロードバランシングの役割

1. 転送機能 ##) によると特定のアルゴリズム [重み付け、ポーリング] に基づいて、クライアント要求は異なるアプリケーション サーバーに転送され、単一サーバーへの負荷が軽減され、システムの同時実行性が向上します。

2. 障害の除去

ハートビート検出を使用して、アプリケーション サーバーが現在正常に動作できるかどうかを確認します。サーバーがダウンした場合、リクエストは自動的に他のサーバーに送信されます。アプリケーション・サーバー。

3. リカバリの追加

障害が発生したアプリケーション サーバーが動作を再開したことが検出された場合、ユーザーのリクエストを処理するチームに自動的に追加されます。

nginx をロードバランサーとして構成する方法 2. Nginx は負荷分散を実装します

また、2 つの Tomcat を使用して、ポート番号 8080 と 8081# を持つ 2 つのアプリケーション サーバーをシミュレートします。

##1. Nginx の負荷分散戦略

Nginx のアップストリームは現在、分散アルゴリズムをサポートしています:

1)、ポーリング - 1: 1 リクエストを順番に処理します (デフォルト)


各リクエストは、時系列に 1 つずつ異なるアプリケーション サーバーに割り当てられます。アプリケーション サーバーがダウンした場合、そのリクエストは自動的に削除され、残りのリクエストは継続されます。投票されました。

2)、重み - 最大値を設定できます


重みを構成し、ポーリング確率を指定します。重みはアクセス率に比例し、不均一なアプリケーション サーバーに使用されます。パフォーマンス 。

3)、ip_hash アルゴリズム

各リクエストは、アクセスされた IP のハッシュ結果に従って割り当てられるため、各訪問者はアプリケーション サーバーに固定的にアクセスでき、次の問題を解決できます。セッションの共有。

2. Nginx の負荷分散と分散戦略を構成する

上流パラメーターに追加されたアプリケーション サーバー IP の後に、指定されたパラメーターを追加するだけです。
、例:

upstream tomcatserver1 {  
    server 192.168.72.49:8080 weight=3;  
    server 192.168.72.49:8081;  
    }   
  
 server {  
        listen       80;  
        server_name  8080.max.com;  
        #charset koi8-r;  
        #access_log  logs/host.access.log  main;  
        location / {  
            proxy_pass   http://tomcatserver1;  
            index  index.html index.htm;  
        }  
     }
ログイン後にコピー
上記の構成により、Web サイト 8080.max.com にアクセスすると、proxy_pass アドレスが設定されているため、すべてのリクエストが最初にリバースされます。 nginx 経由 プロキシ サーバーは、サーバーがリクエストを宛先ホストに転送するときに、tomcatsever1 のアップストリーム アドレスを読み取り、配布ポリシーを読み取り、tomcat1 の重みを 3 に設定します。これにより、nginx はほとんどのリクエストをサーバー 49 の tomcat1 に送信します。 8080 ポート; 条件付き負荷分散を実現するために、より小さい部分が tomcat2 に与えられます。もちろん、この条件はサーバー 1 および 2 のハードウェア インデックス処理要求能力です。

以上がnginx をロードバランサーとして構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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