Node.js“净”连接负载均衡

我正在研究Node.jsnetworking库实现聊天服务器的潜力。 我对node.js非常陌生 我想知道如何在多个服务器间负载平衡到networkingTCP服务器的客户端连接(以处理大负载),并且可以将消息发送到服务器上的所有连接。 有任何服务器可以帮助吗? 或者我应该看看socket.io或其他库的实施?

在开发Mote.io时,我遇到了类似的问题,并决定采用托pipe解决scheme,而不是构build负载平衡器。 处理这个问题非常困难,因为您需要跨服务器同步数据,或者将客户端负载平衡到同一个实例,以确保它们获得所有相同的消息。

Socket.io不会有太大的帮助。 你需要实现redis,一些其他的数据同步或负载平衡应用程序。

PubNub也会照顾到这一点。 后端负责在一个抽象级别上同步消息,负载平衡等,所以你只要提供一个通道名称,PubNub将确保该通道中的所有客户端都能得到消息。

10行代码中的实时聊天应用程序

在这里输入图像说明

Enter Chat and press enter <div><input id=input placeholder=you-chat-here /></div> Chat Output <div id=box></div> <script src=http://cdn.pubnub.com/pubnub.min.js></script> <script>(function(){ var box = PUBNUB.$('box'), input = PUBNUB.$('input'), channel = 'chat'; PUBNUB.subscribe({ channel : channel, callback : function(text) { box.innerHTML = (''+text).replace( /[<>]/g, '' ) + '<br>' + box.innerHTML } }); PUBNUB.bind( 'keyup', input, function(e) { (e.keyCode || e.charCode) === 13 && PUBNUB.publish({ channel : channel, message : input.value, x : (input.value='') }) } ) })()</script>