我有一个socket.io客户端连接到node.js服务器.如果我在命令行中杀死node.js,客户端会立即冻结(即通信停止),但在"disconnect"事件被触发之前有大约20秒的延迟.这种行为是设计的吗?是否有配置选项来减少触发断开连接事件的延迟?
看来这种行为在socket.io的最新(最近6个月)更新中发生了变化.在重新连接功能内置到socket.io本身之前,我使用"disconnect"事件处理程序实现了我自己的重新连接逻辑,并且当服务器通信暂停时,"disconnect"事件几乎立即触发.
我认为这可能是一种设计模式。客户端可能会假设服务器“暂时”无法访问(网络流量等),并且本质上会继续尝试访问它......直到客户端超时开始。
我直接从客户端向服务器发送断开连接(socket.disconnect()),但没有遇到此问题。
归档时间: |
|
查看次数: |
6583 次 |
最近记录: |