pm2 是一个强大的 Node.js 进程管理器,可以帮助你轻松管理 Node.js 应用,包括启动、停止、重启、监控等。下面介绍如何使用 pm2 管理 Node.js 进程并配置定时重启:
1. 安装 pm2
npm install -g pm2
2. 启动 Node.js 应用
使用 pm2 start
命令启动你的 Node.js 应用,例如:
pm2 start app.js
3. 配置定时重启
使用 pm2 restart
命令配置定时重启,例如:
pm2 restart app.js --cron "*/30 * * * *"
解释:
pm2 restart app.js
:重启名为app.js
的进程。--cron "*/30 * * * *"
:使用 cron 表达式配置重启时间。
cron 表达式:
*/30
:每 30 分钟执行一次。*
:表示所有时间单位都匹配。
4. 查看 pm2 进程状态
使用 pm2 list
命令查看所有 pm2 管理的进程状态。
5. 停止 pm2 进程
使用 pm2 stop
命令停止 pm2 管理的进程,例如:
pm2 stop app.js
6. 删除 pm2 进程
使用 pm2 delete
命令删除 pm2 管理的进程,例如:
pm2 delete app.js
7. 其他 pm2 命令
pm2 提供了丰富的命令来管理 Node.js 进程,例如:
pm2 logs
: 查看进程日志。pm2 monit
: 监控进程状态。pm2 reload
: 重新加载进程配置。pm2 restart
: 重启进程。pm2 stop
: 停止进程。pm2 delete
: 删除进程。
注意:
- 定时重启可能会导致应用短暂中断服务,请根据实际情况选择合适的重启时间。
- 使用
pm2 ecosystem.config.js
文件可以更方便地管理多个进程和配置。
示例:
// ecosystem.config.js
module.exports = {
apps: [
{
name: 'my-app',
script: 'app.js',
watch: ['src'],
env: {
NODE_ENV: 'development'
},
env_production: {
NODE_ENV: 'production'
},
restart_delay: 1000,
cron_restart: '*/30 * * * *'
}
]
};
使用 pm2 start ecosystem.config.js
命令启动应用,并根据配置进行定时重启。