后台服务守护进程神器pm2介绍及使用

前言

linux的后台服务程序需要在后台一直运行。如果通过ssh访问临时启动的,会话一结束就直接关闭了服务。想让服务在后台一直运行且永远不挂掉,推荐后台服务守护进程神器pm2,强大且适用于各种语言的后台服务程序。

pm2介绍

对于后台进程的管理,常用的工具是crontab,可用于两种场景:定时任务和常驻脚本。关于常驻脚本,今天介绍一款更好用的工具:pm2,基于nodejs开发的进程管理器,适用于后台常驻脚本管理,同时对node网络应用有自建负载均衡功能。pm2 是一个带有负载均衡功能的Node应用的进程管理器,pm2支持多种开发语言,只是对于除node之外的其他进程无负载均衡的能力。

主要特性

1.内建负载均衡(使用 Node cluster 集群模块)

2.后台运行

3.0 秒停机重载

4.具有 Ubuntu 和 CentOS 的启动脚本

5.停止不稳定的进程(避免无限循环)

6.控制台检测

7.提供 HTTP API

8.远程控制和实时的接口 API(Nodejs 模块,允许和 PM2 进程管理器交互)

pm2安装

由于pm2是nodejs环境下的进程守护神器,所以需要先下载安装nodejs. 在linux下的安装很简单,直接sudo apt-get install nodejs即可。下载安装完,注意替换npm的镜像源,否则软件依赖包容易下载失败。

修改成淘宝镜像源

1.命令

npm config set registry https://registry.npmmirror.com/

2.验证命令

npm config get registry

如果返回https://registry.npmmirror.com/,说明镜像配置成功。

修改成华为云镜像源

npm config set registry https://mirrors.huaweicloud.com/repository/npm/

 安装pm2

npm install pm2 -g

pm2使用

pm2常用命令

常用命令通常都是比较简单。下面列举一些pm2常用的管理命令:

  1. pm2 start <script_file|config_file> [options] 启动指定应用,如pm2 start index.js --name httpServer;

  2. pm2 stop <appName> [options] 停止指定应用,如pm2 stop httpServer;

  3. pm2 reload|restart <appName> [options]  重启指定应用,如pm2 restart httpServer;

  4. pm2 show <appName> [options] 显示指定应用详情,如pm2 show httpServer;

  5. pm2 delete <appName> [options] 删除指定应用,如pm2 del httpServer,如果修改应用配置行为,最好先删除应用后,重新启动方才生效,如修改脚本入口文件;

  6. pm2 kill 杀掉pm2管理的所有进程;

  7. pm2 logs <appName>  查看指定应用的日志,即标准输出和标准错误;

  8. pm2 monit 监控各个应用进程cpu和memory使用情况;

  9. pm2 list,查看所有被pm2守护的进程信息。

其他资源

npm ERR! Cannot read property ‘insert‘ of undefined报错处理_吴砖家呀的博客-CSDN博客

NPM设置国内不同镜像_npm 国内镜像_wangshan_aqi的博客-CSDN博客

自用 Node.js 安装配置_apt get 安装nodejs_摸鱼芝士的博客-CSDN博客

pm2详解_starky0729的博客-CSDN博客

使用pm2管理go应用进程_pm2 go_特立独行的猫a的博客-CSDN博客

猜你喜欢

转载自blog.csdn.net/qq8864/article/details/131263032