闻心阁

一蓑烟雨看苍生,半壶浊酒笑红尘

pm2 是怎样处理端口冲突的?

2020-04-04 约 1 分钟读完 搬砖秘籍
使用pm2在本地启动了2个项目,2个项目都是使用了3000的端口,发现2个项目都启起来了。这是什么黑科技啊? 定位一下3000端口 先定位了一下3000端口的占用情况。 lsof -i tcp:3000 结果: 是73333 看一下pm2 pm2 ls PID并不是73333 什么关系 使用下面命令 ps -ef | grep 95706 ps -ef | grep 95656 原来是 PID 和 PPID, 所以就明了了:父进程进行端口监听,然后分发给子进程进行处理。 思考 那2个项目中的API路径一样怎么办?

pm2 环境变量不生效的解决方法

2020-04-03 约 1 分钟读完 搬砖秘籍
pm2 设置环境变量有2种方法。 方法一 NODE_ENV=XXXXX pm2 XXXX 方法二 使用一个单独的配置文件,可以参考官网 https://pm2.keymetrics.io/docs/usage/environment/ 如: pm2 start ecosystem.config.js --env production 设置不生效 尝试了上述2种方法发现都不行,最近找到解决方案。如果实例已经建立了,即在 pm2 ls 中可以看到,那先需要运行 pm2 delete YOUR_INSTANCE 把原来删除才可以。