Windows で負荷分散に Nginx+Tomcat を使用するための完全な手順

Windows で負荷分散に Nginx+Tomcat を使用するための完全な手順

序文

今日は、Prince が Windows で負荷分散に Nginx + Tomcat を使用する方法の完全な手順について説明します。自分で実践してみてください。

また、この記事は純粋に実践的な記事であり、原則の解釈はあまり含まれていないことを指摘しておきます。後ほど、Nginx の原則について詳しく説明する別のコラムを開設するかもしれません。

では、始めましょう。

Nginxをダウンロード

まず、公式ウェブサイトにアクセスして、Windows 用の Nginx の安定バージョンをダウンロードします。公式ウェブサイトのアドレスは、http://nginx.org/en/download.html です。

ダウンロード後、任意の場所に解凍してください。起動に失敗する原因となりますので、中国語の文字が含まれるフォルダに解凍しないでください。

Windows での起動は非常に簡単です。フォルダーに入り、nginx.exe をダブルクリックして直接起動するだけです。

nginx のデフォルト ポートはポート 80 です。Prince のコンピューターのポート 80 は ISS によって占有されているため、ポートをポート 81 に変更します。

ポートの変更も簡単です。conf フォルダーに移動し、nginx.conf ファイルを開いて、次の場所を変更するだけです。

変更後、ダブルクリックして Nginx サービスを起動できます。コマンド ウィンドウが点滅します。実際には正常に起動しているので、心配する必要はありません。ブラウザーに http://localhost:81/ と入力すると、Nginx の起動ページが表示されます。

このようにして、Nginx 環境が展開されます。

設定ファイルの紹介

Nginx 環境ができたので、次の目標は、ユーザーのリクエストを Nginx 経由で Tomcat にリバース プロキシすることです。そのため、まずデフォルト構成で Tomcat サーバーを起動します。

次に、nginx.conf ファイルを開くと、Prince がその中のいくつかの設定の意味を簡単に紹介します。

    聞く 81;
    server_name ローカルホスト;

Listen: 変更しました。これは Nginx のリスニング ポートを表します。これについては何も言うことはありません。

server_name: 監視後に要求が転送される場所を示します。デフォルトでは、ローカル コンピューターに直接転送されます。

    位置 / {
      ルートhtml;
      インデックス index.html index.htm;
    }

location: は一致するパスを示します。この場合、/ はすべてのリクエストがここで一致することを示します。

root: ルートは内部で構成されます。つまり、このリクエストのパスが一致すると、対応するファイルが html フォルダー内で見つかります。

index: ホームページが指定されていない場合は、指定されたファイルがデフォルトで選択されます。インデックスは複数存在でき、順番に読み込まれます。最初のインデックスが存在しない場合は、2 番目のインデックスが見つかります。

これらの構成に加えて、別の構成を追加します

proxy_pass はプロキシ パスを表します。これは、フォルダーを指定する必要がある前述のルートとは異なり、転送に相当します。

次に、構成ファイルを次のように変更します。

位置 / { 
  proxy_pass http://localhost:8080;
}

次に、Nginx に設定ファイルを再読み込みさせます。Nginx のルート ディレクトリに戻り、nginx -s reload コマンドを実行します。

次に、Nginx ページを再度開きます。Tomcat ページが開かれているのがわかりましたか?

負荷分散構成の実装

リクエストのリバース プロキシを実装し、リクエストを Nginx から Tomcat に転送しました。では、Tomcat 負荷分散クラスターをどのように構成するのでしょうか? 実はとても簡単です。

構成は次のとおりです。

アップストリーム localtomcat { 
  サーバー localhost:8080; 
} 
 
サーバ{ 
    位置 / { 
      proxy_pass http://localtomcat; 
    } 
    #......その他省略}

友人たちよ、ここが重要なポイントです、ここに注意を払わなければなりません。アップストリームの後の名前にはアンダースコアを使用できません。Nginx はアンダースコアを認識しないため、転送異常が発生します。

では、負荷分散を実現するために新しい Tomcat を追加するにはどうすればよいでしょうか?

ポートを変更し、新しい Tomcat サーバー (ポート 8081) を開いて、次の構成を追加します。

アップストリーム localtomcat { 
  サーバー localhost:8080; 
  サーバー localhost:8081; 
}

Nginx 構成ファイルを再ロードすると、負荷分散が実装され、リクエストが 2 つの Tomcat に転送されるようになります。

また、weight=number を設定して、各 Tomcat の重みを指定できます。数値が大きいほど、リクエストが受け入れられる可能性が高くなります。

構成は次のとおりです。

アップストリーム localtomcat { 
  サーバー localhost:8080 weight=1; 
  サーバー localhost:8081 weight=5; 
}

要約する

さて、ここでは Windows 上で Nginx + Tomcat の負荷分散クラスターを構築しました。

プリンスの今日のシェアはこれで終わりです。引き続き、続編の記事に注目してください。

上記は、Windows で負荷分散に Nginx+Tomcat を使用する完全な手順の詳細な内容です。負荷分散用の Nginx+Tomcat の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • Tomcat Nginx Redis セッション共有プロセス図
  • Nginx/Httpd リバース プロキシ Tomcat 設定チュートリアル
  • Nginx/Httpd ロードバランシング Tomcat 設定チュートリアル
  • Nginx 経由で Tomcat9 クラスターを構築し、セッション共有を実現する
  • Docker を使用して nginx で tomcat クラスターを構築する方法 (画像とテキスト付き)
  • Zabbix を使用して Nginx/Tomcat/MySQL を監視する方法の詳細なチュートリアル
  • vue プロジェクトを nginx/tomcat サーバーにデプロイする実装
  • Nginx+Tomcat 高性能負荷分散クラスタ構築チュートリアル
  • Windows 上で Nginx+Tomcat クラスタを実装するプロセスの分析

<<:  MySQL 集計関数のネストされた使用操作

>>:  フォームから Vue ElementUI を使用してログイン効果を実装する例

推薦する

Centos7 に MySQL 8.0.23 をインストールする手順 (初心者レベル)

まず、MySQL とは何かを簡単に紹介します。簡単に言えば、データベースはデータを格納するための倉庫...

HTML テーブル マークアップ チュートリアル (18): テーブル ヘッダー

<br />ヘッダーはテーブルの最初の行を参照します。ヘッダー内のテキストは中央揃えで太...

CentOS 7 に Docker 1.8 をインストールする詳細な手順

Docker は、次の CentOS バージョンでの実行をサポートしています。 • CentOS 7...

Linuxのファイル権限の詳細な紹介

Linux の優れた点は、マルチユーザー、マルチタスク システムにあります。 Linux では通常、...

HTML 要素 (タグ) とその使用法

a : ハイパーリンクの開始位置または宛先位置を示します。頭字語: 単語の最初の文字からなる略語を示...

Mysql の varchar 型に関する注意点

varchar の保存ルール4.0 未満のバージョンでは、varchar(20) は 20 バイトを...

Linux CRM デプロイメント コードの詳細な説明

Linuxの基本設定 Linux環境でpython3をコンパイルしてインストールする 1. Linu...

VMware Workstation Pro が Win10 アップデートにより開けなくなる問題の解決方法

今夜の夕食後にノートパソコンの電源を入れたところ、問題が発生しました。通常、コンピューターがスリープ...

CentOS7 ファイアウォールとポート関連コマンドの紹介

目次1. ファイアウォールの現在の状態を確認する2. ファイアウォールサービスを開始する3. ファイ...

WeChat アプレット wxs 日付と時刻処理の実装例

目次1. 日付までのタイムスタンプ2. UTCを北京時間に変換するWXS (WeiXin Scrip...

HTML ウェブページハイパーリンクタグ

HTML ウェブ ページのハイパーリンク タグの学習チュートリアル リンク タグの属性 リンクは、ウ...

Dockerコンテナでの静的ウェブサイトレイアウトの実装

サーバーの配置数日間無料で使用できるクラウドサーバー(Alibaba Cloud、Huawei Cl...

IE6のmin-widthとmin-heightと互換性を持たせる簡単な方法

ウェブサイトがワイドスクリーンの場合、ブラウザ ウィンドウを左右にドラッグすると、ウェブサイトの幅が...

MySQLのインデックス

序文早速本題に入りましょう。これからお話しするのは次のマインドマップです。まずは印象をつかんでくださ...

シンプルなjQuery + CSSを使用してカスタムタグタイトルツールチップを作成します

導入シンプルな jQuery + CSS を使用して、ブラウザのデフォルトの動作を置き換えるカスタム...