闻心阁

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

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路径一样怎么办?