echarts 存量客户 wpf sockets service threejs ios7 tags Parsley vue样式 网页后台模板 后台界面模板 react脚手架 nodejs视频教程 hadoop创建文件夹 ceb转换成pdf在线转换 配置tomcat环境变量 kafka启动命令 oracle查看所有数据库 kubernetes官网 python中的zip python基础教程 python中不等于 javafile javase教程 java8时间 java程序 java中的泛型 linuxtar命令 linux格式化命令 高效能人士的七个习惯下载 kms神龙 电子书制作软件 魔兽地图七个人 司司网吧 ps调整边缘抠头发丝 jquery下载 平原门下客三千 appdata是什么文件夹 nastran
当前位置: 首页 > 学习教程  > 编程语言

Linux _学习——Centos7 pm2部署nodejs项目

2021/1/13 20:41:01 文章标签: 测试文章如有侵权请发送至邮箱809451989@qq.com投诉后文章立即删除

Linux _学习——Centos7 pm2部署nodejs项目 PM2的优势 PM2是一个带有负载均衡功能的Node应用的进程管理! 内建负载均衡(使用Node cluster 集群模块)可以在后台运行可以0秒停机重载,(可以理解为不需要停机重启&#x…

Linux _学习——Centos7 pm2部署nodejs项目

 

PM2的优势

PM2是一个带有负载均衡功能的Node应用的进程管理!

  1. 内建负载均衡(使用Node cluster 集群模块)
  2. 可以在后台运行
  3. 可以0秒停机重载,(可以理解为不需要停机重启,在用户愉快的浏览页面时我们已经程序更新了)
  4. 控制台检测
  5. 日志管理
  6. 热重载
  1. 将以下PM2配置文件于package.json放到一个根目录下
  2. package.json 的scripts里添加 "pm2": "pm2 start pm2.json"这一段代码这样我们就可以使用 npm run pm2来启动我们的Node项目
{
    "apps": {
        "name": "wuwu",                             // 项目名          
        "script": "./bin/www",                      // 执行文件
        "cwd": "./",                                // 根目录
        "args": "",                                 // 传递给脚本的参数
        "interpreter": "",                          // 指定的脚本解释器
        "interpreter_args": "",                     // 传递给解释器的参数
        "watch": true,                              // 是否监听文件变动然后重启
        "ignore_watch": [                           // 不用监听的文件
            "node_modules",
            "logs"
        ],
        "exec_mode": "cluster_mode",                // 应用启动模式,支持fork和cluster模式
        "instances": 4,                             // 应用启动实例个数,仅在cluster模式有效 默认为fork;或者 max
        "max_memory_restart": 8,                    // 最大内存限制数,超出自动重启
        "error_file": "./logs/app-err.log",         // 错误日志文件
        "out_file": "./logs/app-out.log",           // 正常日志文件
        "merge_logs": true,                         // 设置追加日志而不是新建日志
        "log_date_format": "YYYY-MM-DD HH:mm:ss",   // 指定日志文件的时间格式
        "min_uptime": "60s",                        // 应用运行少于时间被认为是异常启动
        "max_restarts": 30,                         // 最大异常重启次数,即小于min_uptime运行时间重启次数;
        "autorestart": true,                        // 默认为true, 发生异常的情况下自动重启
        "cron_restart": "",                         // crontab时间格式重启应用,目前只支持cluster模式;
        "restart_delay": "60s"                      // 异常重启情况下,延时重启时间
        "env": {
           "NODE_ENV": "production",                // 环境参数,当前指定为生产环境 process.env.NODE_ENV
           "REMOTE_ADDR": "爱上大声地"               // process.env.REMOTE_ADDR
        },
        "env_dev": {
            "NODE_ENV": "development",              // 环境参数,当前指定为开发环境 pm2 start app.js --env_dev
            "REMOTE_ADDR": ""
        },
        "env_test": {                               // 环境参数,当前指定为测试环境 pm2 start app.js --env_test
            "NODE_ENV": "test",
            "REMOTE_ADDR": ""
        }
    }
}

参考 :

  • https://juejin.cn/post/6844903617019772936
  • https://juejin.cn/post/6844904068570169351
  • https://segmentfault.com/a/1190000018439311
  • https://www.hewei.in/posts/2020-10-pm2-tutorial/
  • https://www.jianshu.com/p/175558881f19
  • https://juejin.cn/post/6844903987938869262#heading-6
  • https://juejin.cn/post/6844903971509764104#heading-20

 

 


本文链接: http://www.dtmao.cc/news_show_600413.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?