我们正在开发一个 Javascript 控件,该控件应不断连接到服务器以接收动画更新。
我们计划在亚马逊云上托管这些东西。
场景是这样的:服务器连接到 activemq 队列等待更新,对于每个更新它都会将它广播给所有连接的客户端。
甚至可以用 node.js + socket.io 处理这样的负载吗?单个 node.js 服务器是否能够处理这样的负载?如果我们必须使用多个节点,如何组织不同节点之间的快速传输?
单个 node.js 服务器是否能够处理这样的负载?.. 如果我们必须使用多个节点,如何组织不同节点之间的快速传输
您说您计划在亚马逊上托管。因此,首先,不应将任何内容限定为单个服务器。亚马逊机器将简单地“消失”,您必须假设您将使用多台计算机。
...同时处理 50k 个客户端
因此,首先,单个盒子的 50k 连接是一个非常大的数字。这是一篇非常详细的博客文章,讨论了使用 node.js+socket.io “达到 10k”。
这是一个非常有说服力的报价:
似乎 10,000 个客户端只需要比我的服务器能够处理的更多的序列化。
因此,“达到 50k”的关键组成部分将是仅通过网络推送数据所需的工作量。
如果我们必须使用多个节点,如何组织不同节点之间的快速传输。
那篇博文是 3 篇中的第一篇。完成第一篇后,请阅读另外两篇。那应该为您指明正确的方向。