【问题标题】:Socket.io delay in firing the "disconnect" event?Socket.io 延迟触发“断开连接”事件?
【发布时间】:2011-11-03 19:10:18
【问题描述】:

我有一个连接到 node.js 服务器的 socket.io 客户端。如果我在命令行中终止 node.js,客户端会立即冻结(即通信停止),但在触发“断开连接”事件之前有大约 20 秒的延迟。这种行为是设计使然吗?是否有配置选项来减少触发断开连接事件的延迟?

这种行为似乎在最近(最近 6 个月)的 socket.io 更新中发生了变化。在重新连接功能内置到 socket.io 本身之前,我使用“断开连接”事件处理程序实现了自己的重新连接逻辑,当时服务器通信停止时几乎立即触发“断开连接”事件。

【问题讨论】:

    标签: node.js socket.io


    【解决方案1】:

    我认为这可能是一种设计模式。客户端可能会假设服务器“暂时”无法访问(网络流量等),并且基本上会继续尝试访问它......直到客户端超时。

    我直接从客户端向服务器发送断开连接 (socket.disconnect()),但没有遇到此问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-08
      • 2016-09-20
      • 2014-04-03
      • 2018-01-28
      • 1970-01-01
      • 1970-01-01
      • 2019-05-01
      • 2012-05-07
      相关资源
      最近更新 更多