Я обновляю проект с SignalR до SignalR Core и столкнулся со следующей проблемой. Я не вижу способа для .NET-клиента быстро обнаружить, что он был отключен от сервера. Это происходит, когда веб-служба перезапускает свой пул приложений. Клиенту .NET Core требуется 90 секунд, чтобы обнаружить это с помощью события HubConnection.Closed
.
В оригинальном SignalR это происходило мгновенно через ряд событий, таких как HubConnection.ConnectionSlow
, HubConnection.Reconnecting
или HubConnection.StateChanged
.
Я не вижу ни одного из этих событий в последней стабильной версии SignalR Core 1.0.1. Я пытался отслеживать изменения в свойстве HubConnection.State
, но, похоже, оно отражает событие HubConnection.Closed
, а также обновление занимает 90 секунд.
Каковы рекомендуемые обходные пути для более быстрого обнаружения изменения соединения? Нужно ли мне внедрять свою собственную систему сообщений для поддержки активности?