使用PM2运行node.js服务

PM2是一个带有负载均衡的Node.js应用进程管理器,提供后台运行、0秒停机重载、稳定性保障等功能。它能实现按CPU核数启动进程、实时监控、HTTP API控制等,通过`npm install -g pm2`安装后,可以使用各种命令如`pm2 start`、`pm2 list`、`pm2 stop`等来管理应用。此外,PM2还支持自定义启动文件以配置应用程序的运行方式和日志管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为什么需要使用PM2

因为node.js 是单进程,进程被杀死后整个服务就跪了,所以需要进程管理工具,但是pm2 远远不止这些。

介绍

PM2 是一个带有负载均衡功能的 Node 应用的进程管理器。

当你要把你的独立代码利用全部的服务器上的所有 CPU,并保证进程永远都活着,0 秒的重载, PM2 是完美的。

特性

  • 内建负载均衡(使用Node cluster 集群模块)
  • 后台运行
  • 0秒停机重载(维护升级的时候不需要停机).
  • 具有Ubuntu和CentOS 的启动脚本
  • 停止不稳定的进程(避免无限循环)
  • 控制台检测
  • 提供 HTTP API
  • 远程控制和实时的接口API ( Nodejs 模块,允许和PM2进程管理器交互 )

安装

首先确保有node.js 的环境

npm install -g pm2

 

假设你现在已经写好了一个app.js的文件,需要启动,你可以使用pm2进行管理

1. 启动

  • # pm2 start app.js
  • # pm2 start app.js --name my-api   #my-api为PM2进程名称
  • # pm2 start app.js -i 0           #根据CPU核数启动进程个数
  • # pm2 start app.js --watch   #实时监控app.js的方式启动,当app.js文件有变动时,pm2会自动reload

2. 查看进程

  • # pm2 list
  • # pm2 show 0 或者 # pm2 info 0  #查看进程详细信息,0为PM2进程id

3. 监控

  • # pm2 monit

4. 停止

  • # pm2 stop all  #停止PM2列表中所有的进程
  • # pm2 stop 0    #停止PM2列表中进程为0的进程

5. 重载

  • # pm2 reload all    #重载PM2列表中所有的进程
  • # p
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值