人。我想在Node.js框架中是否有任何用于服务器通信的高级API?例如,我有几台服务器,运行我的应用程序,我想控制这些服务器的加载。有时,如果某个服务器过载,我想将一些连接请求重定向到另一个(更自由的)。有什么功能可以帮助我吗?或者我必须实现自己的功能?
答案 0 :(得分:2)
尝试查看cluster。这允许您控制多个节点进程并很好地扩展。
或者只是设置TCP套接字并通过TCP传递消息或通过redis等数据库传递消息。
您应该能够管道HTTP连接下行流。您有一台HTTP服务器作为负载均衡器,此服务器只是将消息传递给您的其他服务器并将其传回。
答案 1 :(得分:1)
您正在寻找所谓的负载均衡器。有许多现成的解决方案,nginx是当今的标准之一(并且非常快速/易于设置)。
我不知道节点本地解决方案,但写一个并不难。但是,通常情况下,负载均衡器实际上并不监视服务器负载,它们监视服务器是否处于活动状态并相对平均地分配流量。
至于你的通信问题,没有 - 没有标准化的API与node.js服务器进行通信。然而,再次,不难设置 - 假设您已经托管HTTP(使用快速或本机),只需监听特定请求,可能是/comm/
或您认为合适的任何内容并传回JSON, -向前。
答案 2 :(得分:0)
对于Node Js不太确定,但我听说有人使用Capistrano与Nodejs