一台机器上的node.js服务器实例的水平缩放。

| 在node.js上运行Web服务器是一件简单的事情(从其出色的示例和文档中可以看出),但是我想知道如何充分利用专用服务器的CPU资源? 由于node.js是单线程的,因此利用多个处理器的唯一方法是通过多个进程。当然,只有一个进程可以绑定到端口,因此似乎必须有一个主/工作模式,其中主控器派生子代,绑定到传入的端口,并将传入的连接(以及实际的处理工作)委托给子代。 。 (也许是通过饥饿的消费者模式吗?) 这是扩展运行node.js的Web服务器的最佳方法吗?如果是这样,是否有一些库可以简化主/工人模式?如果不是,建议使用哪种模式或部署设置来最佳利用专用计算机的全部资源? (对于ServerFault,这是一个更好的问题吗?)     
已邀请:
        多节点是提供主/工人模式的库。 如果服务器进程不需要能够相互通信,并且您没有使用Socket.IO,则一个简单的选择是仅启动一个进程/核心,绑定到本地端口,然后使用某些东西。例如nginx或HAProxy,以在它们之间进行负载平衡。     
        如果您使用的是Express,我将使用tj的集群:http://learnboost.github.com/cluster/ 它提供了基于“透明” cpu的负载平衡,这很不错,因为您可以使用现有的express应用程序,并且可以相对轻松地跨内核扩展它。     

要回复问题请先登录注册