【问题标题】:socketio and redisstore scaling efficiencysocketio 和 redisstore 扩展效率
【发布时间】:2012-06-03 04:56:51
【问题描述】:

我正在从事一个涉及在客户端之间发送数据的大型项目。所以,我只是在研究一些新技术。无论如何,我想我会试试 Nodejs。我只是有一个关于socketio和redis的问题。

当我们在 socketio 中使用 pub/sub 函数时,每个客户端连接都会创建一个到 redis 的新连接吗?或者,socketio 是否使用最多创建三个连接(总共,不考虑客户端数量)来执行发布/订阅内容?

【问题讨论】:

    标签: node.js redis socket.io


    【解决方案1】:

    the source来看,似乎每个客户端连接都有两个关联的Redis订阅(代码中的this.store),但每个socket.io服务器只有三个Redis连接(source)。

    this.store.subscribe('message:' + data.id, function (packet) {
      self.onClientMessage(data.id, packet);
    });
    
    this.store.subscribe('disconnect:' + data.id, function (reason) {
      self.onClientDisconnect(data.id, reason);
    });
    

    Redis 应该能够处理大量连接和订阅,但一如既往地建议进行基准测试。

    【讨论】:

    • 是的,我正在查看源代码,我只是无法确定是否为每个客户端创建了 Redis 'Store' 对象,或者它是否被重用。任何方式谢谢你。
    猜你喜欢
    • 2013-05-19
    • 2013-01-04
    • 2012-04-01
    • 2014-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-04
    • 1970-01-01
    相关资源
    最近更新 更多