什么时候重新连接signalR occour?
我已经开始与SignalR合作,试图找出Hub Reconnect何时发生。 我没有在网上find任何令人满意的解释。 有人可以解释何时/为什么重新连接?
集线器重新连接发生在客户端脱机后不久重新获得连接。 SignalRconfiguration值在很大程度上决定了以下示例的时间戳记,所以不要逐字逐句。
以下是涉及重新连接行为的几个示例及其结果(时间格式m:ss):
当我提到以下我指的是服务器端Hub方法
- OnConnected
- OnDisconnected
- OnReconnected
  1) 
  0:00  – 客户端连接到服务器,OnConnected被触发 
  0:10  – 由于ISP问题,客户端失去连接(并意识到它失去连接) 
  0:15  – 客户端恢复连接 
  0:16  –  OnReconnected事件被触发 
  2) 
  0:00  – 客户端连接到服务器,OnConnected被触发 
  0:10  – 由于拔出以太网电缆而导致客户端失去连接(未意识到已断开连接) 
  0:15  – 客户端恢复连接 
  这里可能发生两件事情 
 答:0:16  – 没有任何反应,客户端继续以前的连接 
  B:0:〜45  – 客户端实现断开连接* 
  B:0:46  – 客户端转换到重新连接状态 
  B:0:47  – 客户端成功重新连接,并触发OnReconnected事件。 
  3) 
  0:00  – 客户端连接到服务器,OnConnected被触发 
  0:10  – 由于拔出以太网电缆而导致客户端失去连接(未意识到已断开连接) 
  0:〜45  – 客户端实现断开连接* 
  0:46  – 客户端转换到重新连接状态 
  1:15  – 服务器确定客户端已经走了太久,然后忘了它,排队一个“断开”命令为客户端接收,如果稍后重新连接。  *** 
  1:15  –  OnDisconnected被触发 
  1:16  – 客户重新获得连接 
  1:17  – 客户端进行“软”重新连接(不会触发OnReconnected) 
  1:18  – 客户端检索“disconnect”命令 
  1:19  – 客户端呼叫“停止”,并进行软断开连接(不会触发OnDisconnected) 
  4) 
  0:00  – 客户端连接到服务器,OnConnected被触发 
  0:10  – 由于拔出以太网电缆而导致客户端失去连接(未意识到已断开连接) 
  0:〜45  – 客户端实现断开连接* 
  0:46  – 客户端转换到重新连接状态 
  1:15  – 服务器确定客户端已经走了太久,然后忘了它,排队一个“断开”命令为客户端接收,如果稍后重新连接。  *** 
  1:15  –  OnDisconnected被触发 
  1:30  – 客户端停止尝试重新连接(尝试太久)** 
  1:30  – 客户端切换到断开状态 
*由于客户端保持活着检查: 用于确定何时客户由于缺乏保持活力而离线。 没有用于长期投票运输
**由于客户端断开连接超时: 用于确定客户端何时重新连接太长时间,并且在此期间服务器已经忘记了客户端
***由于服务器断开超时: 用于确定何时应该忘记一个客户端。 这是一个时间跨度,一旦连接被标记为死在服务器上开始累积。 最终,服务器将客户端主题的disconnect命令排队,告诉客户端(如果重新连接)需要启动新的连接。 清理主题后,该命令将从服务器上消失。
希望这可以帮助!