序文Tomcat と Nginx + Tomcat 負荷分散クラスター、Tomcat アプリケーション シナリオを紹介し、Tomcat のインストールと構成に焦点を当てます。 Nginx + Tomcat 負荷分散ケースは、実稼働環境向けの信頼性の高い Web サイト ソリューションです。 1. Nginx+Tomcat通常、Tomcat サイトは、単一障害点の可能性があり、顧客からの複雑で多様な要求に対処できないため、実稼働環境で単独で使用することはできません。そのため、Web サイトのアーキテクチャを改善するには、より信頼性の高いソリューションが必要です。 Nginx は優れた http サーバー ソフトウェアです。最大 50,000 の同時接続をサポートし、強力な静的リソース処理機能を備え、安定して動作し、メモリや CPU などのシステム リソースの消費量が非常に少ないです。現在、多くの大規模 Web サイトでは、サイト全体の負荷同時処理能力を向上させるために、バックエンド Web サイト プログラムのリバース プロキシおよびロード バランサとして Nginx サーバーを使用しています。 導入環境
2. Nginxサーバーを構成する1. ファイアウォール関連サービスをオフにする [root@localhost ~]# systemctl stop ファイアウォールd [root@localhost ~]# systemctl ファイアウォールを無効にする [root@localhost ~]# setenforce 0 [root@localhost ~]# vim /etc/resolv.conf ネームサーバー 114.114.114.114 2. 依存パッケージをインストールする [root@localhost ~]# yum install -y gcc gcc-c++ pcre-devel zlib-devel make 3. Nginxをコンパイルしてインストールする [root@localhost ~]# tar zxvf nginx-1.12.2.tar.gz -C /opt/ [root@localhost ~]# cd /opt/nginx-1.12.2/ [root@localhost nginx-1.12.2]# ./configure \ --prefix=/usr/local/nginx \ --user=nginx \ --group=nginx \ --http_stub_status_module を使用する [root@localhost nginx-1.12.2]# make && make install [root@localhost nginx-1.12.2]# ln -s /usr/local/nginx/sbin/* /usr/local/sbin/ [root@localhost ~]# useradd -M -s /sbin/nologin nginx 4. Nginxシステムサービスを追加する [root@localhost ~]# vim /lib/systemd/system/nginx.service [ユニット] 説明=nginx 後=ネットワーク.ターゲット [サービス] タイプ=フォーク PIDファイル=/usr/local/nginx/logs/nginx.pid 実行開始=/usr/local/nginx/sbin/nginx ExecrReload=/bin/kill -s HUP $MAINPID ExecrStop=/bin/kill -s QUIT $MAINPID プライベートTmp=true [インストール] WantedBy=マルチユーザー.ターゲット [root@localhost ~]# chmod 754 /lib/systemd/system/nginx.service #権限付与、root以外のユーザーは変更できません [root@localhost ~]# systemctl start nginx.service [root@localhost ~]# systemctl nginx.service を有効にします 5. Webページのテスト 3. Tomcatアプリケーションサーバーをデプロイする1. 実施準備 [root@localhost ~]# systemctl stop ファイアウォールd [root@localhost ~]# systemctl は、firewalld.service を無効にします。 [root@localhost ~]# setenforce 0 2. JDKをインストールし、Java環境を構成する [root@localhost ~]# rpm -ivh jdk-8u201-linux-x64.rpm 3. JDK環境を設定する [root@localhost ~]# vim /etc/profile ... #3行のコンテンツを挿入 export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64 エクスポート CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar PATH=$JAVA_HOME/bin:$PATH をエクスポートします [root@localhost ~]# ソース /etc/profile 4. Tomcatをインストールして設定する [root@localhost ~]# tar zxvf apache-tomcat-9.0.16.tar.gz -C /opt/ [root@localhost ~]# cd /opt/ [root@localhost opt]# mv apache-tomcat-9.0.16/ /usr/local/tomcat 5. 管理の最適化 [root@localhost ~]# ln -s /usr/local/tomcat/bin/startup.sh /usr/local/bin/ [root@localhost ~]# ln -s /usr/local/tomcat/bin/shutdown.sh /usr/local/bin/ 6. サービスstartup.shを起動する Tomcat1の設定 1. テストディレクトリを作成する [root@localhost ~]# mkdir /usr/local/tomcat/webapps/test 2. 動的なページ構成 [root@localhost ~]# vim /usr/local/tomcat/webapps/test/index.jsp <%@ ページ言語="java" インポート="java.util.*" ページエンコーディング="UTF-8"%> <html> <ヘッド> <title>JSP test1 ページ</title> </head> <本文> <% out.println("動的ページ 1、http://www.test1.com");%> </本文> </html> [root@localhost ~]# vim /usr/local/tomcat/conf/server.xml ... <Context docBase="/usr/local/tomcat/webapps/test" path="" reloadable="true" /> #約 160 行が挿入されました... [root@localhost ~]# シャットダウン.sh [root@localhost ~]# startup.sh Tomcat2の設定 1. テストディレクトリを作成する [root@localhost ~]# mkdir /usr/local/tomcat/webapps/test 2. 動的なページ構成 [root@localhost ~]# vim /usr/local/tomcat/webapps/test/index.jsp <%@ ページ言語="java" インポート="java.util.*" ページエンコーディング="UTF-8"%> <html> <ヘッド> <title>JSP test2 ページ</title> </head> <本文> <% out.println("動的ページ 2、http://www.test2.com");%> </本文> </html> [root@localhost ~]# vim /usr/local/tomcat/conf/server.xml ... <Context docBase="/usr/local/tomcat/webapps/test" path="" reloadable="true" /> #約 160 行が挿入されました... [root@localhost ~]# シャットダウン.sh [root@localhost ~]# startup.sh 3. nginxは静的ページを準備する [root@localhost ~]# echo '<html><body><h1>静的インターフェース...</h1></body></html>' > /usr/local/nginx/html/index.html [root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf ... アップストリーム tomcat_server { サーバー 192.168.192.147:8080 重み=1; サーバー 192.168.192.153:8080 重み=1; } location ~ .*\.jsp$ { # nginx が受信したクライアント IP アドレスを、tomcat にジャンプするリクエストのソース IP に割り当てます。クライアントの実際の IP を識別し、proxy_pass http://tomcat_server を割り当ててジャンプします。 proxy_set_header HOST $host; ##バックエンドウェブサーバーが受信したリクエストのホスト名(ドメイン名またはIP、ポート)を設定します。デフォルトのホスト値は、proxy_pass direct connectionで設定されたホスト名です。 proxy_set_header X-Real-IP $remote_addr; #$remote_addrをX-Real-IP(カスタム)にコピーし、ソースIPとやり取りします。 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; #nginx をプロキシ サーバーとして使用すると、IP リスト セットには、通過した IP、プロキシとその IP が記録されます。} ... [root@localhost ~]#systemctl nginx.serviceを再起動します 4. Webページのテスト結果 要約するNginx の上流に 2 台以上の Tomcat サーバーを配置して負荷分散クラスターを形成し、proxy_pass などの Web プロキシ メソッドを使用して場所にクラスター サイトを設定し、重み値を使用して Tomcat サーバーの重みを個別に設定することができます。 実稼働環境では、Tomcat サーバーのハードウェア構成が異なる場合があります。対応するサーバーの重み値を変更して、より高い構成またはより低い構成のサーバーへのアクセス要求の分散を制御できます。 Nginx+Tomcat 負荷分散クラスターの詳細なインストールと構成の事例に関するこの記事はこれで終わりです。Nginx Tomcat 負荷分散クラスターの関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: CSS+JS で水滴の波紋アニメーション ボタン効果を実装するサンプル コード
>>: Vue で計算プロパティを使用する際の知識ポイントのまとめ
問題の背景業務システムのサーバ監視システムからディスク使用率が90%に達したという早期警告通知が来た...
ここ数年、ウェブサイト開発では DIV+CSS が非常に人気があり、当時は大きな騒動を引き起こしまし...
MySQL 8.0.13 のインストールと設定方法を皆さんと共有したいと思います。お役に立てれば幸...
まずcharAt関数の基本的な構文を見てみましょう文字 = str.charAt(インデックス) c...
Tomcat は Web コンテナとして広く知られています。Java を学び始めたときから現在の仕事...
1. コンポーネントをインストールする yum install epel-rpm-macros.no...
MySQL でデータを削除するには 2 つの方法があります。切り詰めは大まかな伐採の一種である削除は...
セレクタのグループ化h2 要素と段落の両方を灰色にしたいとします。これを行う最も簡単な方法は、次のス...
この記事には、細かい点は一切なく、カラーマッチングのテクニックをシェアするだけです。とてもシンプルで...
目次序文1. エラーログ2. バイナリログ1. バイナリログを有効にする2. バイナリログ形式3. ...
1. 設置前によく掃除する rpm -pa | grep mysql または rpm -qa | g...
1. MySQLリポジトリソースをダウンロードする$ wget http://repo.mysql....
概要この記事のフレームワーク図は次のとおりです。 1. フローティングとは一体何でしょうか? W3s...
序文Boost ライブラリは、標準ライブラリのバックアップとして機能し、C++ 標準化プロセスの開発...
数学、物理学、および一部の科学技術分野で使用される特殊記号は多数あります。Unicode コードには...