2011-04-18 60 views
2

人。我徘徊在Node.js框架中是否有任何服务器通信的高级API?例如,我有几台服务器,我的应用程序运行在这里,我想控制这台服务器的加载。有时,如果某个服务器超载,我想将一些连接请求重定向到另一个(更多免费的)。有什么功能可以帮助我吗?或者我必须实现我自己的功能?Node.js高级服务器的通信API

回答

2

尝试寻找在cluster。这使您可以控制多个节点进程并很好地进行缩放。

或者只需设置TCP套接字并通过TCP传递消息或通过类似redis的数据库传递消息。

您应该可以管理HTTP连接关闭流。您有一台HTTP服务器作为负载均衡器,并且该服务器只是将消息传递给其他服务器并将其传回。

1

您正在寻找什么叫做负载平衡器。现在有很多现成的解决方案,其中nginx是今天的标准之一(并且非常快速/易于设置)。

我不知道节点本地解决方案,但编写它并不难。然而,通常情况下,负载平衡器并不实际监视服务器负载,它们监视服务器是否正在运行,并相对平均分配流量。

至于你的通信问题,没有 - 没有标准化的API来与Node.js服务器进行通信。但是,再次设置起来并不困难 - 假设您已经托管HTTP(使用Express或本机),只需监听特定的请求,可能是/comm/或您认为合适的任何内容,并且来回传递JSON。

0

不太清楚了,但是的NodeJS我听说使用Capistrano与PPL的NodeJS