手机版

用PM2部署node.js项目的方法教程

时间:2021-09-05 来源:互联网 编辑:宝哥软件园 浏览:

你应该在开发中发现,如果直接通过node app启动,如果报错,可能在整个操作中直接停止,主管觉得只是作为开发环境使用。在线查找pm2。目前,nodejs项目最常见的在线部署似乎是Forever和PM2。下面这篇文章将详细介绍与PM2一起部署node.js项目的方法教程,有需要的朋友一起看一下详细介绍:

使用场合:

Supervisor用于开发环境。Forever管理多个站点,每个站点几乎没有流量,不需要监控。Pm2网站访问量大,需要完整的监控界面。PM2 :的主要特点

内置负载均衡(使用Node集群集群模块)在后台运行0秒,我的理解大致是维护升级的时候不用停机。带有Ubuntu和CentOS的启动脚本可以停止不稳定的进程(避免无限循环)。控制台检测提供HTTP API远程控制和实时接口API (Nodejs模块,允许与PM2进程管理器交互)安装。

npm安装的使用-g pm2

$ npm install -g pm2命令行,用于全局安装pm2

$ pm2 start app.js启动应用程序项目

$ pm2列表列出了由pm2管理的所有进程信息,还显示了一个进程因未处理的异常而被启动的次数。

$ pm2 monit监控每个节点进程的CPU和内存使用情况

$ pm2日志显示所有过程日志

$ pm2 stop all停止所有进程

$ pm2重启所有重启所有进程

$ pm2全部重新加载0秒以停止重新加载的进程(对于联网进程)

$ pm2 stop 0停止指定的进程

$ pm2重启0重启指定的进程

$ pm2启动生成init脚本来保持进程活动

$ pm2 web运行一个健壮的计算机API端点(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以分叉模式启动app.js,而不是使用集群

$ pm2startapp.js-x -a 23以分叉模式启动app.js并传递参数(-a 23)

$ pm2startapp.js-nameserverone启动一个进程并将其命名为serverone

$ pm2停止服务器一停止服务器一进程

$ pm2 start app.json启动进程并在app.json中设置选项

$ pm2startapp.js-imax-A 23将参数传递给app.js后-

$ PM2 startapp . js-I max-e err . log-o out . log启动并生成一个配置文件

配置pm2启动文件

在项目的根目录中添加一个processes.json:

内容如下:

{ ' apps ' :[{ ' name ' : ' my work ',' CWD ' : '/SRV/node-app/current ',' script': 'bin/www ',' log _ date _ format ' : ' YYYY-MM-DD hh :MM Z ',' error _ file ' : '/var/log/node-app/node-app . stderr . log ',' out _ file ' 3: ' log/node-app . STD。

Apps:json结构,Apps是一个数组,每个数组成员对应一个运行在pm2中的应用。名称:应用程序名称cwd:应用程序目录脚本:应用程序脚本路径Log _ Date _ Format : Error _ File :自定义应用程序的错误日志文件out_file:自定义应用程序日志文件pid_file:定义了应用程序的pid文件instance :min _ uptime :的最小运行时间,这里的设置是60s,也就是说如果应用程序在60s内退出,pm2会认为应用程序退出此时,重启被触发。max _ Reuters set number max _ restart s 3360设置应用程序异常退出重启的次数。默认情况下,cron_restart:会定期启动15次(从0开始计数),以解决重启可以解决的问题。watch:是否启用监控模式默认为假。如果设置为true,当应用程序改变时,pm2将自动重新加载。您也可以在这里设置要监控的文件。merge _ logs : exec _ interpreter :应用程序的脚本类型,这里使用的shell默认是nodexec _ mode3360应用程序启动模式,这里设置的是cluster_mode。默认情况下,fork autorestart:在应用程序崩溃或退出时启用/禁用自动重新启动vizion:启用/禁用vizion功能(版本控制),该功能可以通过PM2startprocesses.json启动。

您也可以在package.json中编写命令.以下:

使用npm运行pm2启动。

摘要

以上就是本文的全部内容。希望本文的内容能给你的学习或工作带来一些帮助。有问题可以留言交流。谢谢你的支持。

版权声明:用PM2部署node.js项目的方法教程是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。