Node.js 多个socket.io进程共享同一端口?

Node.js 多个socket.io进程共享同一端口?,node.js,socket.io,scalability,Node.js,Socket.io,Scalability,我尝试扩展socket.io应用程序,并尝试在服务器上运行多个进程 我使用redis store而不是内存存储,如下所述: 我的服务器侦听端口8090: var io=require('/usr/local/lib/node_modules/socket.io')。侦听(8090) 当我启动第二个进程时,我得到一个地址正在使用错误: 警告-引发错误:错误:侦听EADDRINUSE 处理这个问题的最佳方式是什么? 每个进程都有一个端口和一个负载平衡器来区分它们 或者有更好的解决方案吗?为此我使用,

我尝试扩展socket.io应用程序,并尝试在服务器上运行多个进程

我使用redis store而不是内存存储,如下所述:

我的服务器侦听端口8090: var io=require('/usr/local/lib/node_modules/socket.io')。侦听(8090)

当我启动第二个进程时,我得到一个地址正在使用错误: 警告-引发错误:错误:侦听EADDRINUSE

处理这个问题的最佳方式是什么? 每个进程都有一个端口和一个负载平衡器来区分它们

或者有更好的解决方案吗?

为此我使用,并根据请求的URL将流量路由到内部端口。下面是我用来路由请求的一个非常简单的例子

var httpProxy = require('http-proxy');

var httpOptions = {
    router: {
        'domain1.com/foo': 'localhost:3001',
        'domain1.com/bar': 'localhost:3002',
        'domain2.com/baz': 'localhost:3003',
    } 
};

var httpServer = httpProxy.createServer(httpOptions);
httpServer.listen(80);
有关我的特定设置的更多详细信息,请参见此问题: