当前位置: 首页 > 后端技术 > Node.js

使用pm2部署Nodejs

时间:2023-04-03 22:37:01 Node.js

最近用node写了一个小项目。项目完成后,正是在部署阶段,我开始思考如何更好地监控项目。node的开发过程中有很多痛点。最受不了的就是修改文件后重启服务。它需要不断地关闭进程和启动进程。后来研究了一下,发现用nodemon可以自动重启服务,方便多了。但是当项目需要上线的时候,发现nodemon不能后台运行,于是用python写了一个自动启停脚本,可以实现后台运行。代码如下,#!/bin/bashnode_status(){pids=`psaux|grepnode|grepwww|awk'{print$2}'`if[${pids}]thenreturn1elsereturn2fi}node_start(){node_statusif[$?==2]thennohupnode/home/web/claire/bin/www>>/tmp/node/shell.log2>&1&fi}node_stop(){node_statusif[$?==1]然后kill-9${pids}>>/tmp/node/shell.log2>&1fi}node_restart(){node_stopsleep5node_start}node_defend(){whiletruedonode_statusif[$?==2]然后node_startfisleep5done}ACTION=$1case$ACTIONinstart)node_start;;停止)节点停止;;重新启动)节点重新启动;;防御)节点防御;;在编写python脚本时,如果使用编辑器,需要将编码格式转换成unix格式。否则不会报错。我使用nodepad++。修改方法是右键选择unix格式。后来发现Nodejs有一个高端的管理工具PM2,可以用于生产环境的Nodejs。进程管理工具,它有一个内置的负载平衡器。不仅保证服务不中断,永远在线,还提供0秒重载功能,以及其他一系列的进程管理和监控功能。而且非常好用,赶快来试试吧。Nodejs安装前,nodejs安装是先从官网下载安装包,然后安装。在使用pm2的过程中了解到nvm工具可以方便的切换nodejs版本。推荐使用这种方式安装node。删除之前安装的节点,查询全局安装的模块,删除npmlist-g--depth0curl-o-https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh|bash执行curl过程curl报错:(35)SSLconnecterror,执行yumupdatenss最后执行source~/.bashrcnvm--version//检查nvm是否安装成功nvminstallstable//安装最新的稳定版pm2安装环境Linuxx86_64nodev10.8.0npm6.2.0全局安装npminstallpm2-g安装成功后可以直接启动pm2startbin/wwwpm2参考地址:https://www.cnblogs.com/zzsdr...