Nodejsが開始されているかどうかを確認する方法

王林
リリース: 2023-05-25 09:18:36
オリジナル
1170 人が閲覧しました

Node.js の開発と使用がますます普及するにつれて、多くの人が開発プロジェクトに Node.js を使用しています。しかし、実際に使っているとNode.jsが起動しているかどうかが判断できない状況に遭遇することがあります。では、Node.jsが起動したことはどのように判断すればよいのでしょうか?

実際には、Node.js が起動したかどうかを確認する方法はたくさんありますが、以下では、私自身の経験に基づいて、より一般的に使用されるいくつかの方法を紹介します。

  1. コンソール出力の表示

Node.js を起動すると、「サーバーはポート 3000 でリッスンしています」などのいくつかの情報がコンソールに出力されます。これは非常に重要です。明らかな信号。この情報が表示されればNode.jsが起動されています。もちろん、この方法はローカルのテスト環境にのみ適していますが、運用環境の場合は他の方法が必要です。

  1. リッスン ポート

Node.js が起動すると、ポート番号 (通常は 80 または 3000 など) をリッスンします。 Node.js を開始する前に、このポートが占有されているかどうかを確認できます。ポートが占有されていない場合は、Node.js が開始されていません。ポートがすでに占有されている場合は、Node.js が開始されています。もちろん、プロジェクトに複数のポートがある場合、この方法はさらに面倒になります。

  1. リクエストを送信してステータスを確認する

Node.js にリクエストを送信することで、Node.js のステータスを確認できます。レスポンスが返ってきたらNode.jsは起動しています。この方法では、リクエスト ライブラリなどのサードパーティ ライブラリを使用する必要があります。

コードは次のとおりです:

var http = require('http'); var request = require('request'); var server = http.createServer(function(req, res) { // 处理请求 }); server.listen(port, function() { request('http://localhost:' + port, function(error, response, body) { if (!error && response.statusCode == 200) { console.log('Node.js 已经启动'); } else { console.log('Node.js 启动失败'); } }); });
ログイン後にコピー
  1. PM2 を使用してプロセスを管理する

PM2 は、管理に役立つ非常に優れたプロセス管理ツールです。 Node.js プロセス (開始、停止、再起動など)。 PM2 を使用して Node.js を起動する場合、Node.js が起動後に実行するコマンドを含む構成ファイルを設定し、Webhook アドレスを設定できます。Node.js が正常に起動すると、リクエストが送信されます。リクエストが成功したかどうかで、Node.js が起動したかどうかを判断できます。

設定ファイルは次のとおりです:

{ "apps": [ { "name": "my-app", "script": "index.js", "watch": true, "env": { "PORT": 3000 }, "webhook": "http://localhost:8080" } ] }
ログイン後にコピー

pm2 start Ecosystem.config.jsを実行すると、PM2 は Node.js を開始します。Node.js が正常に開始されると、リクエストはhttp://localhost:8080に送信されます。このアドレスのサーバー側でリクエストが成功したかどうかを判断するだけで済みます。

要約:

上記のメソッドは、Node.js が開始されているかどうかを判断するのに役立ちます。メソッドが異なれば特性も異なります。特定の状況に応じて使用するメソッドを選択できます。実際のプロジェクトでは、より便利で高速な PM2 を使用して Node.js プロセスを管理することをお勧めします。

以上がNodejsが開始されているかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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