(6)Nginx構成例3の負荷分散

まず、効果を出す

    (1)アドレスhttp://サーバーIP / bs-managerをブラウザーのアドレスバーに入力し、負荷分散効果、平均8081および8082ポート;

                    

2. 準備

    (1)2つのTomcatサーバーを準備する

  • 8081と8082の2つのTomcatサーバーを準備する
  • 上記のリバースプロキシは、2番目のインスタンスで正常に構成されています。ただし、次のように何かを追加する必要があります。

    (2)場所を変更する

  • 2つのtomcatのwebappsディレクトリで、eduという名前のフォルダーを作成し、テスト用にeduフォルダーにページa.htmlを作成します。
  • 2番目の例では、8082にeduフォルダーがあるため、8081フォルダーの下にのみ作成できます。
    次に、vodファイルの下でコマンドを使用します。
cp a.html ../edu/  

完了するには、コマンドを表示します

cd ../edu/     # 进入到 edu 目录下

cat a.html #查看内容

3、nginx構成ファイルの負荷分散構成

  •  最初の例の構成を変更

      å¨è¿éæå¥å¾çæè¿°

構成コード:

   upstream myserver { 
    
        ip_hash; //按照IP地址hash轮询
        server 208.208.128.122:8081;
        server 208.208.128.122:8082;
    }
    server {
        listen       80;
        server_name  208.208.128.122;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            proxy_pass   http://myserver;
            #proxy_pass   http://127.0.0.1:8081;
            index  index.html index.htm;
    }

第四に、最終テスト

 テストURL:  http://サーバーのIPアドレス/ edu / a.html

å¨è¿éæå¥å¾çæè¿°å¨è¿éæå¥å¾çæè¿°

5番目のNginx配信サーバー戦略

        インターネット情報の爆発的な増加に伴い、ロードバランスはそれほど馴染みのないトピックではなくなりました。名前が示すように、ロードバランシングは負荷をさまざまなサービスユニットに分散することであり、サービスの可用性を確保するだけでなく、応答が十分に高速であることも保証します、ユーザーに良い体験を提供するため。アクセスとデータトラフィックの急速な増加により、さまざまな負荷分散製品が生み出されました。多くの専門的な負荷分散ハードウェアは優れた機能を提供しますが、高価です。そのため、負荷分散ソフトウェアは非常に人気があります。nginxはその1つです。 1つは、Nginx、LVS、Haproxy、およびLinuxの下にロードバランシングサービスを提供するその他のサービスがあり、Nginxはいくつかの配布方法(戦略)を提供します。

         

  •  ポーリング(デフォルト)各要求は、時系列順に1つずつ異なるバックエンドサーバーに割り当てられます。バックエンドサーバーがダウンしている場合は、自動的に排除できます。この方法はシンプルで低コストですが。しかし、欠点は、信頼性が低く、負荷分散が不均衡であることです。イメージサーバークラスターと純粋な静的ページサーバークラスターに適用できます。
  • 重量(重量)重みは重みを表します。デフォルトは1です。重みが高いほど、より多くのクライアントが割り当てられます。指定されたポーリング確率である重みは、バックエンドサーバーの不均一なパフォーマンスに使用されるアクセス率に比例します。以下に示すように、8082のアクセス率は8081の2倍です。

upstream myserver {
        server 208.208.128.122:8081 weight=5;   #  在这儿
        server 208.208.128.122:8082 weight=10;
    }
    server {
        listen       80;
        server_name  208.208.128.122;
        location / {
            root   html;
            proxy_pass   http://myserver;
            index  index.html index.htm;
    }
  • ip_hash(アクセスIP)。 ip_hash各リクエストはipへのアクセスのハッシュ結果に従って割り当てられるため、各ビジターはバックエンドサーバーに固定的にアクセスします。セッションの問題を解決できます。

    upstream myserver {
    	ip_hash;							//  在这儿
        server 208.208.128.122:8081 ;   
        server 208.208.128.122:8082 ;
    }
    server {
        listen       80;
        server_name  208.208.128.122;
        location / {
            root   html;
            proxy_pass   http://myserver;
            index  index.html index.htm;
    }
  • フェア(サードパーティ)。公平(サードパーティ)、バックエンドサーバーの応答時間に応じて要求を分散し、短い応答時間を優先します。重量配分戦略に似ています。

    upstream myserver {					
        server 208.208.128.122:8081 ;   
        server 208.208.128.122:8082 ;
        fair;            #  在这儿
    }
    server {
        listen       80;
        server_name  208.208.128.122;
        location / {
            root   html;
            proxy_pass   http://myserver;
            index  index.html index.htm;
    }
  • url_hash(サードパーティ)は、URLへのアクセスのハッシュ結果に従って要求を分散します。これにより、各URLは同じバックエンドサーバーに送られます。これは、バックエンドサーバーがキャッシュされている場合により効果的です。
  • 注:上流にハッシュステートメントを追加します。サーバーステートメントは、重みなどの他のパラメーターを書き込むことができません。hash_methodは、使用されるハッシュアルゴリズムです。
 upstream resinserver{ 
      server 10.0.0.10:7777; 
      server 10.0.0.11:8888; 
      hash $request_uri; 
      hash_method crc32; 
}

アップストリームは、各デバイスのステータス値を設定することもできます。これらのステータス値の意味は次のとおりです。

  • down:注文前のサーバーが一時的にロードに参加しないことを示します。
  • 重量:デフォルトは1です。重量が大きいほど、負荷の重量が大きくなります。
  • max_fails:失敗したリクエストのデフォルト数は1です。最大数を超えると、proxy_next_upstreamモジュールで定義されたエラーが返されます。
  • fail_timeout:max_failsが失敗した後に一時停止する時間。
  • バックアップ:他のすべての非バックアップマシンがダウンまたはビジーの場合は、バックアップマシンを要求します。したがって、このマシンの圧力は最小になります。
upstream bakend{ #定义负载均衡设备的Ip及设备状态 
      ip_hash; 
      server 10.0.0.11:9090 down; 
      server 10.0.0.11:8080 weight=2 max_fails=1 fail_timeout=1s; 
      server 10.0.0.11:6060 max_fails=1 fail_timeout=1s; 
      server 10.0.0.11:7070 backup; 
}

  

元の記事を108件公開 58のような 50,000以上の訪問

おすすめ

転載: blog.csdn.net/qq_41893274/article/details/104736197