瓶颈与套接字的方法?

考虑创build一个用户可以进行协作的实时应用程序。 发现node.js + socket.io是这类问题的解决scheme之一。

我听到其他开发人员说,就我的服务器给用户的套接字数量而言,会有一个瓶颈。 因此,如果我有数百个用户在同一时间进行协作,则打开的套接字数量将会耗尽,用户将无法连接。 这是一个有效的关注吗?

更新:有关的相关说明我正在寻找使用SockJS而不是Socket.io。 有一个线索可以解释这些库的优缺点 。 这也是一个很好的阅读 。

对于数百个用户,我不认为这是一个问题。

您所知的套接字具有客户端和服务器之间的持续连接,并且双方可以随时开始发送数据。 保持打开状态不像处理每秒发送消息的负载那样多。

Socket.io可以轻松处理1000个并发连接。 但是如果它每秒发送超过8-10k条消息,将会失败。 在sockets耗尽之前,您将会碰到负载障碍物。 在大多数情况下处理更多的并发用户转换为更高的负载。 所以不要担心套接字太低。 试图超越这个障碍将需要更多的服务器资源。

有用的url :

  1. Socket.IO – 是一个关注的开放连接吗?
  2. http://www.quora.com/How-do-I-scale-socket-io-servers-2

现在已经有使用Cloud9这种方法的解决scheme ,并且效果很好。 将有一个点,你需要扩大。 所以如果你打算做一些大事,我会考虑一下。

这里有一些testingsockets.io 10,000并发连接。 看起来这是一个很好的解决scheme,但并不容易,因为后备机制。