nginx を手動でインストールした後は、すべてが正常であり、仮想ホストの構成と負荷分散に問題はありません。正常に有効になりました。特定の構成ファイルは次のとおりです:
追加: include vhost/*.conf; を conf の nginx.conf ファイルに追加し、将来の構成のために vhost ディレクトリ内のすべての .conf ファイルを導入します. 簡単ですが、必要に応じて1つずつ追加することもできます。
ロードサービスは API サービスなので、ここでの conf ファイルの名前は api.xxx.com.conf となり、ファイルを開くときの設定は次のとおりです。
ここでは IP ポーリング方式は使用されていませんが、usstream 方式が使用されています。これらの方式の具体的な違いについては、Baidu または Google で関連する紹介を参照してください。なお、ここでproxy_passはupstreamの名前として設定していますが、それ以外は使用できません、IPアドレスを直接設定すると負荷分散ができなくなります。
重みは重みで表され、数値が大きいほど、重みが大きくなり、割り当てられる可能性が高くなります。バックアップはホット スタンバイ サーバーを表します。つまり、最初の 2 つの負荷に問題がある場合、ホット スタンバイ サーバーは、ホット スタンバイ サーバーを表します。サーバー これらの訪問は自動的に想定されます。 これでnginxロードバランシングコンフィギュレータの設定は完了ですが、負荷がかかった後、通常のURLだとアクセス時にセッションロスが発生してしまうため、この時点でセッション損失に対処する 問題、この問題に対処するには、複数の解決策があります。1 つは Cookie プロキシを使用することであり、もう 1 つはセッション共有を実現することです。ここではセッション共有を使用します。共有を実現する場合、関連する設定が必要です。 tomcat で実行されます。これを実現するには、要件に従って、ここで構成されたセッションの共有サーバーは、主にデータの効率的な読み取りと保存を確保するために redis メモリ サービスです。セッション共有に redis を使用する場合は、次の名前を追加する必要があります:これらのパッケージは tomcat8 を問題なくサポートしていますが、他のバージョンの特定のサポートに関して関連するテストは行われていません。
次に、tomcat の構成ファイルを変更します:
ここに表示される 10.0.0.x のアドレスはすべて内部ネットワーク内で完成します。ブロックされ、負荷を担当するサーバーのみが外部ネットワークに直接接続されます。
この時点では、tomcat サーバーと nginx サーバーは正常に起動できますが、その前に nginx サーバーを先に起動する必要があります。そうしないと、tomcat の起動に失敗する可能性があります。 nginx サービスをスムーズに開始できます3 つの構成は次のとおりです。
nginx.conf に追加された参考内容
include vhost/*.conf;
負荷分散構成:
upstream api.xxx.com { server 10.0.0.12:8080 weight=5; server 10.0.0.15:8081 weight=5 ; server 10.0.0.16:8080 weight=5 backup; } server { listen 80; server_name api.xxx.com; location / { proxy_set_header host $host; proxy_set_header x-real-ip $remote_addr; proxy_set_header x-forwarded-for $remote_addr; proxy_pass http://api.xxx.com; } }
<valve classname="com.radiadesign.catalina.session.redissessionhandlervalve" /> <manager classname="com.radiadesign.catalina.session.redissessionmanager" host="10.0.0.16" port="10000" database="0" maxinactiveinterval="60" />
以上がCentos7+Nginx+Tomcat8をベースにした負荷分散サーバーの構築方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。