ホームページ  >  記事  >  ウェブフロントエンド  >  複数の Node.js インスタンスをデプロイする方法

複数の Node.js インスタンスをデプロイする方法

PHPz
PHPzオリジナル
2023-04-06 09:11:53789ブラウズ

Web 開発における Node.js のアプリケーションが広く普及するにつれて、複数の Node.js インスタンス間でのデプロイメントが必要なプロジェクトがますます増えています。この記事の目的は、複数の Node.js インスタンスをデプロイする方法を探ることです。

  1. PM2 を使用して複数の Node.js インスタンスをデプロイする

PM2 は、起動、停止、再起動、監視に使用できる人気のある Node.js プロセス マネージャーであり、 Node.js アプリケーションの実行を自動化します。 PM2 を使用して、複数の Node.js インスタンスをデプロイすることもできます。

手順は次のとおりです:

1.1 PM2 をインストールします

#次のコマンドを使用して PM2 をインストールします:

npm install -g pm2
1.2 アプリケーションを開始します

次のコマンドを使用して、Node.js アプリケーションを開始します。

pm2 start app.js
ここで、

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

1.3 負荷分散の構成

デフォルトでは、PM2 は 1 つの Node.js インスタンスのみを起動します。複数のインスタンスをデプロイする場合は、負荷分散を構成する必要があります。 PM2 の「負荷分散モード」を使用して、複数のインスタンスを起動できます。

次のコマンドを使用して、負荷分散モードを開始します:

pm2 start app.js -i max
ここで、

max は、できるだけ多くの Node.js インスタンスを開始することを意味します。

1.4 プロセスの監視

次のコマンドを使用して、PM2 によって監視されているすべてのプロセスを表示します:

pm2 list
次のコマンドを使用して、特定のプロセスのステータスを表示します:

pm2 show process_id

process_id はプロセスの識別子です。

    Nginx を使用して複数の Node.js インスタンスをデプロイする
Nginx は、複数の Node.js の例をデプロイするために使用できる高性能 Web サーバーおよびリバース プロキシ サーバーです。 。

手順は次のとおりです:

2.1 Nginx のインストール

次のコマンドを使用して Nginx をインストールします:

sudo apt-get install nginx
2.2 Nginx の構成

Nginx 設定ファイルを開きます :

sudo nano /etc/nginx/sites-available/default
次の行を

server ブロックに追加します:

upstream nodejs {
    server 127.0.0.1:3000;
    server 127.0.0.1:3001;
    server 127.0.0.1:3002;
    # 可以添加更多的Node.js实例
}

server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://nodejs;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}
where

127.0.0.1:3000, 127.0.0.1:3001 127.0.0.1:3002 は Node.js インスタンスのアドレスとポート番号で、実際の状況に応じて変更できます。

2.3 Nginx の再起動

次のコマンドを使用して Nginx サービスを再起動します:

sudo service nginx restart
    Docker を使用して複数の Node.js インスタンスをデプロイします
Docker は、複数の Node.js インスタンスをデプロイするために使用できるオープン ソースのコンテナ化プラットフォームです。

手順は次のとおりです。

3.1 Docker のインストール

最初に Docker をインストールする必要があります。 Docker はさまざまなプラットフォームをサポートしており、公式 Web サイトからシステムに適した Docker インストーラーをダウンロードしてインストールできます。

3.2 Docker イメージのビルド

次のコマンドを使用して Docker イメージを作成します。

docker build -t my-node-app .
ここで、

my-node-app は名前です。 Docker イメージを実際の状況に基づいて変更できます。

3.3 Docker コンテナの起動

次のコマンドを使用して Docker コンテナを起動し、コンテナをホストのポートにマップします:

docker run -p 3000:3000 -d my-node-app
where

3000 は Node.js アプリケーションのポート番号で、実際の状況に応じて変更できます。

3.4 コピーと拡張

次のコマンドを使用して、Docker コンテナーをコピーして拡張します。

docker-compose up --scale my-node-app=3
ここで、

my-node-app は名前です。コンテナの 3 は起動するコンテナの数で、実際の状況に応じて変更できます。

概要

この記事では、複数の Node.js インスタンスをデプロイする 3 つの方法 (PM2 を使用する、Nginx を使用する、Docker を使用する) を紹介します。実際のアプリケーションでは、最高のパフォーマンスと信頼性を得るために、必要に応じて適切な導入方法を選択してください。

以上が複数の Node.js インスタンスをデプロイする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。