NGINX と PM2 を使用して VPS サーバー上でサービス拡張と負荷分散を実現する方法

王林
リリース: 2023-09-28 22:25:02
オリジナル
1091 人が閲覧しました

NGINX と PM2 を使用して VPS サーバー上でサービス拡張と負荷分散を実現する方法

NGINX と PM2 を使用して、VPS サーバー上でサービスの拡張と負荷分散を実現するにはどうすればよいですか?

高同時アクセスとサーバー パフォーマンスの向上の需要に応え、サービスの拡張と負荷分散が重要なソリューションになっています。この記事では、NGINXとPM2を利用してVPSサーバー上でのサービス拡張と負荷分散を実現する方法を紹介します。

1. NGINX と PM2 とは何ですか?

  1. NGINX は、リバース プロキシ、ロード バランシング、キャッシュなどの機能を備えたオープンソースの高性能 Web サーバーです。優れた性能と信頼性により、インターネット分野で広く使用されています。
  2. PM2 は最新の Node.js プロセス マネージャーで、Node.js アプリケーションのデプロイ、監視、自動再起動の管理に役立ちます。

2. サービスの拡張と負荷分散に NGINX を使用する

  1. NGINX のインストール

まず、VPS サーバーに NGINX をインストールする必要があります。特定のインストール方法は、さまざまなオペレーティング システムに応じて検索して見つけることができます。

  1. NGINX リバース プロキシの構成

負荷分散に NGINX を使用する前に、リクエストをバックエンド サーバーに転送するようにリバース プロキシを構成する必要があります。 NGINX 構成ファイルを編集し、http ブロックに次の内容を追加します。

upstream backend {
    server backend1;
    server backend2;
    server backend3;
}

server {
    listen 80;
    server_name example.com;
    
    location / {
        proxy_pass http://backend;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}
ログイン後にコピー

ここでの backend1、backend2、および backend3 はバックエンド サーバーのアドレスであり、実際の状況に応じて構成できます。

  1. NGINX サービスの開始

構成ファイルを保存した後、次のコマンドを使用して NGINX サービスを開始します:

sudo service nginx start
ログイン後にコピー

この時点で、NGINXが構成されており、example.com にアクセスしてリバース プロキシが機能しているかどうかをテストできます。

3. PM2 を使用して Node.js アプリケーションを拡張および負荷分散する

  1. PM2 のインストール

Node.js と PM2 を VPS サーバーにインストールします。特定のインストール方法は、さまざまなオペレーティング システムに応じて検索して見つけることができます。

  1. Node.js アプリケーションのデプロイ

PM2 を通じて、Node.js アプリケーションをサーバーにデプロイできます。プロジェクトのルート ディレクトリで、次のコマンドを実行します。

pm2 start app.js
ログイン後にコピー

ここでの app.js は、Node.js アプリケーションのエントリ ファイルです。

  1. PM2 のプロセス数と負荷分散の構成

デフォルトでは、PM2 は 1 つのプロセスのみを開始します。負荷分散を実現するために複数のプロセスを開始する必要がある場合は、次のコマンドを使用できます:

pm2 scale app +3
ログイン後にコピー

ここでの app は PM2 の Node.js アプリケーションの名前で、3 は 3 つのプロセスを開始することを意味します。サーバーの構成とパフォーマンスに基づいて、プロセスの数を自分で調整できます。

4. NGINX と PM2 を組み合わせてサービス拡張と負荷分散を実現する

  1. NGINX の構成を変更する

以前に構成した NGINX 構成ファイルで、リバース プロキシの転送アドレスを、Node.js アプリケーションによって監視されるアドレスとポートに変更します。例:

upstream backend {
    server 127.0.0.1:3000;
    server 127.0.0.1:3001;
    server 127.0.0.1:3002;
}
ログイン後にコピー
  1. NGINX と PM2

構成ファイルを使用して、次のコマンドを使用して NGINX サービスと PM2 サービスを再起動します。

sudo service nginx restart
pm2 restart all
ログイン後にコピー

この時点で、NGINX と PM2 はサービス拡張とロード バランシングの構成を完了しています。 example.com にアクセスすると、リクエストは NGINX によってバックエンドの複数の Node.js プロセスに転送されて処理されます。

この記事では、NGINX と PM2 を使用して VPS サーバー上でサービスの拡張と負荷分散を実現する方法を簡単に紹介します。 NGINX のリバース プロキシと負荷分散構成を PM2 のマルチプロセス展開と組み合わせることで、サーバーのパフォーマンスと安定性を向上させることができます。実際のアプリケーションでは、特定のニーズに応じて NGINX と PM2 をより詳細に構成および調整できます。

以上がNGINX と PM2 を使用して VPS サーバー上でサービス拡張と負荷分散を実現する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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