【问题标题】:Is socketcluster redundant when using cluster js in a node js app?在节点 js 应用程序中使用集群 js 时,socketcluster 是多余的吗?
【发布时间】:2015-12-12 12:58:01
【问题描述】:

假设我正在尝试在节点 js 应用程序中扩展我的应用程序以实现超过 200k+ 的套接字连接,我该怎么做。我一直在做很多研究,并在考虑: -应用层 -socket.io 层 -负载均衡器

这是在我阅读了 socket.io 基准测试article 之后,但后来偶然发现了 socketcluster!我还考虑过使用 socket.io + redis 并增加 heroku dyno,不确定这会增加多少 socket.io 的可扩展性。

我现在的问题是集群 js 不会已经在所有可用内核上运行带有 socket.io 的节点 js 服务器的多个实例吗?如果是这样,您为什么需要 socketcluster?

谢谢!

【问题讨论】:

    标签: node.js sockets heroku socket.io


    【解决方案1】:

    Socket.io 需要粘性负载平衡,这使您的应用更容易受到 DoS 攻击(使用粘性负载平衡,恶意用户可以针对特定的工作人员并一次使他们崩溃)。此外,当您必须处理公司代理背后的用户时,粘性负载平衡可能会导致工作人员之间的流量分布不均。

    与 SocketCluster 不同,Socket.io 不支持 pub/sub,这使得连接到不同工作器/主机的用户之间难以进行通信。

    【讨论】:

      猜你喜欢
      • 2017-04-17
      • 1970-01-01
      • 2014-07-24
      • 1970-01-01
      • 1970-01-01
      • 2015-12-19
      • 2013-10-07
      • 2020-03-08
      • 1970-01-01
      相关资源
      最近更新 更多