Node.jsプロセスマネージャーであるPM2入門
PM2 、またはProcess Manager 2は、Node.jsで記述された非常に用途の広いプロダクションプロセスマネージャーです。
PM2の用途
PM2には多くの用途がありますが、いくつか見てみましょう。
- クラッシュ後の再起動:PM2を使用すると、宇宙の熱的死またはサーバー障害のいずれか早い方までプロセスを実行し続けることができます。
- プロセスのリモート監視と管理:魔法の力で動くWebポータルを使用すると、リモートプロセスを監視して管理できます。
- ノードアプリを実行するだけではありません:PM2はNode.jsプロセスだけに限定されていません。そうです、Minecraftサーバーをオンラインに保つために使用することもできます。
- Restart-Persistance :PM2はすべてのプロセスを記憶し、システムの再起動後にそれらを再起動できます
- そしてもっとたくさん
入門
最初に行う必要があるのは、PM2をマシンにグローバルにインストールすることです。
$ npm i -g pm2
基本コマンド
使い方の基本を学びましょう。 PM2でプロセスを開始するには、pm2 start <app>
を実行するだけです。 アプリは、実行しているファイルの名前です。 PM2は次のように出力します。
[PM2] Starting C:\Users\moose\app.js in fork_mode (1 instance) [PM2] Done. ┌──────────┬────┬ │ App name │ id │ ├──────────┼────| │ app │ 0 │ └──────────┴────|
簡潔にするために縮小および簡略化
id
の下に書かれていることに注意してください。 忘れた場合は、pm2 list
を実行してください。 プロセスの開始時にプロセスに名前を追加する場合は、--name
パラメーター(pm2 start app.js --name mycoolapp
)を使用できます。 素晴らしい! アプリはPM2で実行されています。クラッシュした場合、PM2はアプリを再起動します。
ファイル変更時に再起動
PM2のもう1つの優れた機能は、作業ディレクトリ内のファイルが変更されたときに再起動することです。 PM2にディレクトリを監視させ、ファイルの変更を再開するには、アプリの起動時に--watch
フラグを含めます。
再起動による永続性
PM2を使用すると、サーバーが(再)起動したときにプロセスを開始することもできます。 pm2 start
を介して常に実行したいものを開始してから、pm2 save
を実行します。
$ pm2 save [PM2] Saving current process list... [PM2] Successfully saved in C:\Users\moose\.pm2\dump.pm2
これで、システムが再起動すると、PM2は、pm2 save
を実行したときに実行していたプロセスをすべて開始します。
🐊PM2は多くのことを行いますが、そのほとんどはこの簡単な紹介の範囲外です。 将来的には、PM2のクラスターモード、リモートプロセス管理などをカバーする可能性があります。 読んでくれてありがとう!