pm2 是一個有負載平衡功能的Node應用的進程管理器.本文主要介紹了詳解使用PM2管理nodejs進程,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟著小編過來看看吧,希望能幫助大家。
當你要把你的獨立程式碼利用全部的伺服器上的所有CPU,並保證進程永遠都活著,0秒的重載, PM2是完美的。
它非常適合IaaS結構,但不要把它用於PaaS方案(隨後將開發Paas的解決方案).
和使用node index.js方式比較,優點:
1 一個命令視窗就可管理多個node伺服器進程。而node指令多個進程就需要開多個視窗。
2 關閉命令窗口,node進程仍然會運行。而node指令運行的關閉視窗後,進程也就關閉了。
一安裝PM2
npm install -g pm2
二用pm2 啟動index.js
pm2 start index.js --name tank
#--name tank是給這個程序取個名字
三其他pm2指令
安装 npm install -g pm2 用法 $ npm install pm2 -g # 命令行安装 pm2 $ pm2 start app.js -i 4 #后台运行pm2,启动4个app.js # 也可以把'max' 参数传递给 start # 正确的进程数目依赖于Cpu的核心数目 $ pm2 start app.js --name my-api # 命名进程 $ pm2 list # 显示所有进程状态 $ pm2 monit # 监视所有进程 $ pm2 logs # 显示所有进程日志 $ pm2 stop all # 停止所有进程 $ pm2 restart all # 重启所有进程 $ pm2 reload all # 0秒停机重载进程 (用于 NETWORKED 进程) $ pm2 stop 0 # 停止指定的进程 $ pm2 restart 0 # 重启指定的进程 $ pm2 startup # 产生 init 脚本 保持进程活着 $ pm2 web # 运行健壮的 computer API endpoint (http://localhost:9615) $ pm2 delete 0 # 杀死指定的进程 $ pm2 delete all # 杀死全部进程 运行进程的不同方式: $ pm2 start app.js -i max # 根据有效CPU数目启动最大进程数目 $ pm2 start app.js -i 3 # 启动3个进程 $ pm2 start app.js -x #用fork模式启动 app.js 而不是使用 cluster $ pm2 start app.js -x -- -a 23 # 用fork模式启动 app.js 并且传递参数 (-a 23) $ pm2 start app.js --name serverone # 启动一个进程并把它命名为 serverone $ pm2 stop serverone # 停止 serverone 进程 $ pm2 start app.json # 启动进程, 在 app.json里设置选项 $ pm2 start app.js -i max -- -a 23 #在--之后给 app.js 传递参数 $ pm2 start app.js -i max -e err.log -o out.log # 启动 并 生成一个配置文件 你也可以执行用其他语言编写的app ( fork 模式): $ pm2 start my-bash-script.sh -x --interpreter bash $ pm2 start my-python-script.py -x --interpreter python 0秒停机重载: 这项功能允许你重新载入代码而不用失去请求连接。 注意: 仅能用于web应用 运行于Node 0.11.x版本 运行于 cluster 模式(默认模式) $ pm2 reload all CoffeeScript: $ pm2 start my_app.coffee #这就是全部 PM2准备好为产品级服务了吗? 只需在你的服务器上测试 $ git clone https://github.com/Unitech/pm2.git $ cd pm2 $ npm install # 或者 npm install --dev ,如果devDependencies 没有安装 $ npm test
相關推薦:
#以上是使用PM2管理nodejs進程分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!