Linux で複数の Tomcat の Nginx 負荷分散を構成する方法

PHPz
リリース: 2023-05-28 23:22:25
転載
704 人が閲覧しました

1: nginx ディレクトリの下の conf ディレクトリに入力します。

これは nginx のインストール ディレクトリです:

[root@aliserver ~]# cd /usr/local/nginx/conf
ログイン後にコピー

2: nginx.conf を編集します

Linux で複数の Tomcat の Nginx 負荷分散を構成する方法

[root@aliserver conf]# vi nginx.conf
ログイン後にコピー

3: サーバー グループを構成する

1: http{} ノード間にアップストリーム構成を追加します。 (localhost を書かないように注意してください。そうしないとアクセス速度が非常に遅くなります)

upstream nginxdemo {
  server 127.0.0.1:8081;  #服务器地址1
  server 127.0.0.1:8082;  #服务器地址2
  server 127.0.0.1:8082;  #服务器地址3
  server 127.0.0.1:8083;  #服务器地址4
}
ログイン後にコピー

2: nginx がリッスンするポート番号を変更します 80

nginx のデフォルトのポートは 80 です。ここではまだ変更していません。変更しないでください

server {
  listen    80;   #默认是80,也可更改为其他的,当然已被占用的端口号不能写。
  ......
}
ログイン後にコピー

3: proxy_pass を使用してリバース プロキシ アドレスを構成します

location\{} で、ここに「http://」を省略することはできません。そして、次のアドレスは、最初のステップで、アップストリームによって定義された名前と同じである必要があります (つまり、nginxdemo の名前はカスタマイズされており、両方の場所で一貫している必要があります)

location / {
      root  html;
      index index.html index.htm;
      proxy_pass http://nginxdemo; #配置方向代理地址
    }
ログイン後にコピー

構成が完了したら、図に示すように:

Linux で複数の Tomcat の Nginx 負荷分散を構成する方法

4: nginx

My インストール パスを開始します。 nginx の場所は /usr/local/nginx

なので、私の起動コマンドは Yes:

[root@aliserver ~]# /usr/local/nginx/sbin/nginx
ログイン後にコピー
ログイン後にコピー

nginx はインストール前に起動されており、インストール時にポート番号が占有されているというエラーが報告されるためです。再び開始されます

Linux で複数の Tomcat の Nginx 負荷分散を構成する方法

この時点で、コマンドを使用して各ポート番号の占有状況を確認します

[root@aliserver ~]# netstat -ntpl
ログイン後にコピー

Linux で複数の Tomcat の Nginx 負荷分散を構成する方法

nginx が pid 9097 によって占有されていることがわかります。kill -9 を使用してそれを強制終了します

[root@aliserver ~]# kill -9 9097
ログイン後にコピー

Start it again nginx

[root@aliserver ~]# /usr/local/nginx/sbin/nginx
ログイン後にコピー
ログイン後にコピー

には応答がありません。この時点で、ブラウザ上にサーバアドレス

Linux で複数の Tomcat の Nginx 負荷分散を構成する方法

# が表示され、nginx が正常に起動したことがわかります 設定が正しいか、負荷分散ができるか、早速検証してみましょう。 。 。

5: 検証

nginx のロード バランシングでは、すべてのクライアント リクエストが nginx を経由し、nginx がこれらのリクエストの転送先を決定できることは誰もが知っています。 A にはより十分なリソース (より多くの CPU、より大きなメモリなど) があり、サーバー B にはサーバー A ほど強力な処理能力がありません。その場合、nginx はより多くのリクエストをサーバー A に転送し、より少ないリクエストをサーバー B に転送するため、これは負荷分散を実現しており、サーバーがダウンしてもユーザーは正常にWebサイトにアクセスできます。

検証の前に、いくつかの準備をする必要があります。

1: 次のような単純な JSP を準備します。

Linux で複数の Tomcat の Nginx 負荷分散を構成する方法

サーバーに 4 つの Tomcat がインストールされているので、4 つのインデックスを準備しました。 jsp ファイル

<title>tomcat8080<title> <h1>hellow tomcat_8080</h1>
<title>tomcat8081<title> <h1>hellow tomcat_8081</h1>
<title>tomcat8082<title> <h1>hellow tomcat_8082</h1>
<title>tomcat8083<title> <h1>hellow tomcat_8083</h1>
ログイン後にコピー

です。ここで注意する必要があるのは、Tomcat が正常に起動した様子が図に示されているため、jsp ファイルの名前はindex.jsp でなければならないということです。 :

Linux で複数の Tomcat の Nginx 負荷分散を構成する方法

Tomcat インストール ディレクトリの webapps/root/index.jsp です

私のアドレスは:/usr/java/tomcat/ tomcat_8080/webapps/root

Linux で複数の Tomcat の Nginx 負荷分散を構成する方法

各 Tomcat のデフォルトの Index.jsp ファイルを、事前に準備した 4 つの Index.jsp ファイルで上書きします。

各 tomcat を起動します

[root@aliserver bin]# ./startup.sh
ログイン後にコピー

このとき、ブラウザに xxx.xxx.xx.xx:8080 と入力すると、子猫が表示されなくなっていることがわかります。 。 。 。 。 。

Linux で複数の Tomcat の Nginx 負荷分散を構成する方法

Linux で複数の Tomcat の Nginx 負荷分散を構成する方法

Linux で複数の Tomcat の Nginx 負荷分散を構成する方法

Linux で複数の Tomcat の Nginx 負荷分散を構成する方法

#4 tomcats はすべて正常に起動し、nginx も正常に起動しました。

この時点で、ブラウザにサーバー IP を入力してページを更新し続けると、ページにはしばらくの間 8080、しばらくの間 8081、しばらくの間 8082、そしてしばらくの間 8083 が表示されることがわかります。もちろん、これは、どのサーバーがより多くのリソースを持っているかに基づいて、リクエストの送信先を決定するのは nginx です。ブラウザー内のリクエストのアドレスは変更されませんが、別の Tomcat サーバーにアクセスします。これは、nginx が正常に構成されたことを意味します。

以上がLinux で複数の Tomcat の Nginx 負荷分散を構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!