zoukankan      html  css  js  c++  java
  • pm2在node中的应用

    pm2 是一个带有负载均衡功能的Node应用的进程管理器,当你要把你的独立代码利用全部的服务器上的所有CPU,并保证进程永远都活着,0秒的重载, pm2是完美的。

    主要特性:

    • 内建负载均衡(使用Node cluster 集群模块)
    • 后台运行
    • 0秒停机重载,我理解大概意思是维护升级的时候不需要停机
    • 具有Ubuntu和CentOS 的启动脚本
    • 停止不稳定的进程(避免无限循环)
    • 控制台检测
    • 提供 HTTP API
    • 远程控制和实时的接口API ( Nodejs 模块,允许和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
    • 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

    效果图:

  • 相关阅读:
    HDU 5107 线段树扫描线
    多线程之多生产多消费者
    matlab @
    全概率公式
    正确理解HTML,XHTML页面的头部doctype定义
    每天过的非常充实。
    struts2对action中的方法进行输入校验(2)
    Ubuntu下Chromium源码的编译
    LCA 最近公共祖先 tarjan离线 总结 结合3个例题
    VS2010-win32下cocos2dx控制台打印的方法
  • 原文地址:https://www.cnblogs.com/vipzhou/p/4949200.html
Copyright © 2011-2022 走看看