根据这个answer
您应该在一个盒子上运行多个节点服务器,每个核心一个,并在它们之间分割请求流量。这提供了极好的CPU亲和力,并将随着核心计数几乎线性地扩展吞吐量。
明白了,为了简单起见,我们的盒子有两个核。
我需要一个完整的示例aHello World应用程序在使用nginx的两个节点服务器之间进行负载平衡。
这也应该包括任何nginx配置。

最佳答案

应用程序js

var http = require('http');
var port = parseInt(process.argv[2]);

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

console.log('Server running at http://localhost:' + port + '/');

nginx配置
upstream app  {
  server localhost:8001;
  server localhost:8002;
}

server {
  location / {
    proxy_pass  http://app;
  }
}

启动应用程序
node app.js 8001
node app.js 8002

HttpUpstreamModule documentation
附加阅读材料
cluster module-仍处于实验阶段,但不需要nginx
forever module-万一你的应用程序崩溃
nginx and websockets-如何代理新nginx版本中的websockets

07-24 15:38