PM2入门教程

PM2入门教程

 

PM2是带有内置负载平衡器的Node.js应用程序的生产过程管理器。它使您可以使应用程序永远保持活动状态,无需停机即可重新加载它们,并简化常见的系统管理任务。

以生产模式启动应用程序很容易:

$ pm2 start app.js

PM2不断受到1800多次测试的袭击。

官方网站:https : //pm2.keymetrics.io/

在Linux(稳定)和macOS(稳定)和Windows(稳定)上工作。从Node.js 8.X开始支持所有Node.js版本。

NPM

 

安装PM2

使用NPM:

$ npm install pm2 -g

或者,如果您没有安装Node.js:

wget -qO- https://getpm2.com/install.sh | bash

启动应用

您可以像这样启动任何应用程序(Node.js,Python,Ruby,$ PATH中的二进制文件...):

$ pm2 start app.js

现在,您的应用程序将被守护,监控并永远保持活动状态。

有关流程管理的更多信息

 

管理应用程式

启动应用程序后,您可以轻松管理它们:

 

列出所有正在运行的应用程序:

$ pm2 list

管理应用程序非常简单:

$ pm2 stop     <app_name|namespace|id|'all'|json_conf>
$ pm2 restart  <app_name|namespace|id|'all'|json_conf>
$ pm2 delete   <app_name|namespace|id|'all'|json_conf>

要获得有关特定应用程序的更多详细信息,请执行以下操作:

$ pm2 describe <id|app_name>

要监视日志,自定义指标,应用程序信息:

$ pm2 monit

有关应用程序管理的更多信息

 

集群模式:Node.js负载平衡和零宕机时间重新加载

群集模式是启动Node.js应用程序时的一种特殊模式,它启动多个进程并在它们之间负载均衡HTTP / TCP / UDP查询。这样可以提高整体性能(在16核计算机上提高10倍)和可靠性(在发生未处理错误的情况下,套接字重新平衡速度更快)。

在群集模式下启动将利用所有可用CPU的Node.js应用程序:

$ pm2 start api.js -i <进程数>

<processes>可以是'max'-1(所有cpu减1)或要启动的指定数量的实例。

 

零停机重载

热重装允许更新应用程序而不会造成任何停机:

$ pm2 reload all

由所有主要的Node.js框架和任何Node.js应用程序无缝支持,而无需进行任何代码更改:

支持的框架

有关PM2如何简化群集的更多信息

 

容器支持

使用node名为的插入替换命令,pm2-runtime在强化的生产环境中运行Node.js应用程序。使用它是无缝的:

RUN npm install pm2 -g
CMD [ "pm2-runtime", "npm", "--", "start" ]

阅读有关专用集成的更多信息

 

基于终端的监控

 

监视直接从命令行启动的所有进程:

$ pm2 monit

 

日志管理

要查询日志,只需键入以下命令:

$ pm2 logs

提供标准,原始,JSON和格式化输出。

例子:

$ pm2 logs APP-NAME       # Display APP-NAME logs
$ pm2 logs --json         # JSON output
$ pm2 logs --format       # Formated output

$ pm2 flush               # Flush all logs
$ pm2 reloadLogs          # Reload all logs

有关日志管理的更多信息

启动脚本生成

PM2可以生成并配置启动脚本,以在每次服务器重新启动时使PM2和您的进程保持活动状态。

支持的Init Systems:systemdupstartlaunchdrc.d

#生成启动脚本
$ pm2 startup

#在服务器重启期间冻结您的进程列表
$ pm2 save

#删除启动脚本
$ pm2 unstartup
# Generate Startup Script
$ pm2 startup

# Freeze your process list across server restart
$ pm2 save

# Remove Startup Script
$ pm2 unstartup

有关启动脚本生成的更多信息

 

PM2模块

PM2嵌入了一个简单而强大的模块系统。安装模块非常简单:

$ pm2 install <模块名称>

以下是一些与PM2兼容的模块(由PM2管理的独立Node.js应用程序):

pm2-logrotate自动旋转日志并限制日志大小
pm2-server-monit通过20多种指标和8个操作来监视当前服务器

 

更新PM2

#安装最新的PM2版本
$ npm install pm2 @ latest -g 
#保存进程列表,退出旧的PM2并恢复所有进程
$ pm2 update
# Install latest PM2 version
$ npm install pm2@latest -g
# Save process list, exit old PM2 & restore all processes
$ pm2 update

PM2更新是无缝的

 

PM2 +监控

如果您使用PM2管理应用程序,则PM2 +可以轻松地跨服务器监视和管理应用程序。随意尝试:

发现PM2的监控仪表板

在此先感谢您,我们希望您喜欢PM2!

更新日志

更新日志

贡献者

贡献者

执照

PM2根据GNU Affero通用公共许可证3.0(AGPL 3.0)的条款提供。对于其他许可证,请与我们联系

 

翻译来源:https://gitee.com/yunwisdoms/pm2

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值