用pm2管理node进程
在这篇博客中,我将介绍使用PM2对NodeJS应用进行监控管理。
PM2是NodeJS应用的进程管理器。它的一个特点是自动使用Node的 Cluster API。 PM2使应用程序能够运行多个进程,通常不需要修改它。
PM2 是一个带有负载均衡功能的Node应用的进程管理器.
当你要把你的独立代码利用全部的服务器上的所有CPU,并保证进程永远都活着,0秒的重载, PM2是完美的。它非常适合IaaS结构。
我们将讨论安装,配置和使用PM2。
安装
npm install -g pm2
Web Interface (JSON API)
PM2以一个JSON API的形式配备了web接口。我们可以开始运行以下命令:
pm2 web
这个web监听端口9615.这个Web接口实际上是一个监控程序。我们可以检查任何监视的处理,例如:
# List processes monitored
pm2 list
# See "tail" style log output of all logs output from watched processes
pm2 logs
# Clear all logs
pm2 flush
# List process 0 (the web interface in this case)
pm2 desc 0
# Monitor processes and system usage
pm2 monit
这是web接口:
运行应用程序
运行一个应用程序与PM2相当直白:
pm2 start app.js --name "myapp" -i max
让我们探讨一下这个命令:
- –start app.js ——运行和监视应用程序
- –name ——应用程序的名称,所以我们可以参考其他命令
- –i max ——运行多个应用程序的过程。 每个CPU核心PM2将运行一个进程。 它还将试图运行的进程之间的负载平衡的请求。
我的应用叫 myapp 我们可以使用其他命令:
# Reload and restart the application
pm2 reload myapp
# Stop the application
pm2 stop myapp
# Remove myapp from PM2
pm2 delete myapp
还有其他一些命令可以使用,如 gracefulReload 重新启动之前,用于关闭所有现有的连接。
现在我们可以看到web界面和应用监控:
下面就是PM2 monit的命令界面:
今天就介绍这么多