websocket 当signalR与集线器的连接丢失时,代理始终保持重新连接状态2分钟

hk8txs48  于 2023-01-17  发布在  其他
关注(0)|答案(1)|浏览(187)

我继承了一个c# .net应用程序,它与另一个服务器上的SignalR集线器代理通信。有时.net应用程序与集线器代理的连接丢失,每当这种情况发生时,它将进入重新连接状态,持续两分钟。我尝试了几种不同的方法来尝试减少这个时间,但没有成功。在2分钟结束时,它将从重新连接翻转回已连接,通信将恢复。
老实说,我希望这些连接立即恢复,但即使是减少它从2分钟将大大有助于其他问题。我觉得奇怪的是,它总是正好2分钟,但我还没有找到为什么集线器代理连接总是需要那么长的时间来恢复。
使用WebSocketTransport强制创建连接也不会对此行为产生任何影响。
它目前是围绕Microsoft.aspNet.SignalR构建的,该程序应该自动重新连接,但当它发生时,websocket将在2分钟内保持重新连接。由于它正在重新连接,因此预计会出现以下异常,但不清楚为什么总是在2分钟内重新连接。
“无法发送数据,因为WebSocket连接正在重新连接”
另外,如果我关闭SignalR服务器并重新启动它,它不会等待2分钟重新连接,它会立即连接到重新启动的示例。

z31licg0

z31licg01#

试试这个:

`    var connection = new signalR.HubConnectionBuilder()
    .withUrl('/WebLogHub')
    .configureLogging(signalR.LogLevel.Debug)
    .withAutomaticReconnect()
    .build();`

相关问题