2017/05/02
整理一下自己使用 pm2 部署 express 小应用碰到的一些问题,服务器是linux
环境。
nodejs版本控制
如果服务器已经安装nodejs
,使用 n (shell
,不支持windows
操作系统)来升级(如果需要)服务器的nodejs
;
如果没有,则推荐使用 nvm 来安装、切换nodejs
版本和使用。
使用n的注意点
n
默认安装路径是/usr/local
,确定服务器的nodejs
目录,如果不同,则更改n
的安装路径。
确定nodejs
路径
which node
若路径为/usr/local/software/nodejs/bin/node
,设置n
的安装路径,打开配置文件
vim ~/.shell_profile
将以下两句加至export PATH
之前
export N_PREFIX=/usr/local/software/nodejs
export PATH=$N_PREFIX/bin:$PATH
让配置生效
source ~/.shell_profile
express集群
nodejs
的应用是单进程单线程的,而现在的服务器CPU
多是4核、8核等,所以借助工具可以让应用多进程运行,方法和工具显然不限于下面我介绍的,请自行查阅。
使用cluster
使用pm2
它包含了cluster
的逻辑,是个工具,更方便使用。
我碰到了使用命令行启动应用时,无法启动cluster
模式,后来采用配置文件,指定启动模式和线程个数才可以,原因未找到。
{
"apps": [
{
"name": "your-app-name",
"script": "your-app-start-script",
"instances": 0,
"exec_mode": "cluster"
}
]
}
网友评论