1

我在具有两个 CPU 内核的机器上使用 PM2 对 Node.js (10.32) 简单脚本进行负载平衡时遇到问题。

脚本如下:

var http = require('http');
var server = http.createServer(function (req, res) {
  res.writeHead(200, {"Content-Type": "text/plain"});
  res.end("Hello World\n");
});
server.listen(81);

如果我运行pm2 start -i max script.js,两个子进程似乎成功启动(根据pm2 list),但请求http://localhost:81挂起。

如果我运行pm2 start -i max -x script.js,第一个子进程会成功启动,但第二个子进程会永远重启(出现 EADDRINUSE 错误)。

我检查过lsof,在运行 PM2 之前没有使用端口 81。

4

0 回答 0