ezyk_cn 项目-保持服务稳定运行的三种方式
时间:2021.5.21
一、利用 forever
优势:使用简单,稳定运行,即使断开远程连接也不会掉线
劣势:功能较为鸡肋,只能代替 node xx.js,不能结合 babel 使用,也就启动不了 es6 语法的 js 文件
forever 是一个 nodejs 守护进程,完全由命令行操控。forever 会监控 nodejs 服务,并在服务挂掉后进行重启。
- 1、安装 forever
npm install forever -g
- 2、启动服务
service forever start
- 3、使用 forever 启动 js 文件
forever start index.js
- 4、停止 js 文件
forever stop index.js
- 5、启动 js 文件并输出日志文件
forever start -l forever.log -o out.log -e err.log index.js
- 6、重启 js 文件
forever restart index.js
- 7、查看正在运行的进程
forever list
2、利用 pm2 https://www.jianshu.com/p/35485618fe6d
优势:即使断开远程连接也不会掉线,稳定运行;对 node 服务监控到位,几乎支持所有命令;配置文件,操作性强。
启动
例如我想要启动,一条 script 脚本
pm2 start npm --name 'y' --start
这样就执行了 npm run start ,并将其保持后台运行状态,别名为’y’
也可以这样执行,pm2 start 文件名 --interpreter 解析器,相当于使用 babel-node 作为文件的解析器 babel-node xx.js.
同样的道理,也可以启动 python 程序等…
管理
pm2 list 可以查看正在运行的服务
重启
pm2 restart id
更多的命令可以查看教程。
一、利用 nohup xx &
优势:linux 原生,无需安装,支持各种脚本运行命令
缺点:断开连接之后,服务会掉线,不适合服务长久运行
格式为 nohup 【命令】 &
e.g nohup npm run server &
nohup babel-node server.js