Клиент SignalR прекращает получать данные с сервера случайным образом на производственном сервере, но всегда работает на сервере разработки - PullRequest
0 голосов
/ 04 сентября 2018

Клиент успешно подключен к концентратору сигналов через веб-сокеты, но иногда получает данные только с рабочего сервера. На сервере разработки (IIS Express) он всегда получает данные.

Я включил веб-сокеты на производственном сервере (Windows Server 2012, сигнализатор версии 2.3.0). Клиент должен получать данные с сервера каждый раз, когда устанавливается соединение, но иногда он не получает данные, и в журналах клиента и в журналах сервера нет ошибок.

Я также включил трассировку файла сигнализатора на сервере. Который показывает следующие журналы в trasports.log.txt:

SignalR.Transports.TransportHeartBeat Verbose: 0: KeepAlive (064cb5fb-6607-4cb8-904f-5486d9ad09cf) SignalR.Transports.WebSocketTransport Информация: 0: CloseSocket (064cb5fb-6607-4cb8-904f-5486d9ad09cf) SignalR.Transports.WebSocketTransport Информация: 0: Прервать (064cb5fb-6607-4cb8-904f-5486d9ad09cf) SignalR.Transports.TransportHeartBeat Информация: 0: Удаление соединение 064cb5fb-6607-4cb8-904f-5486d9ad09cf SignalR.Transports.WebSocketTransport Информация: 0: End (064cb5fb-6607-4cb8-904f-5486d9ad09cf) SignalR.Transports.WebSocketTransport Verbose: 0: DrainWrites (064cb5fb-6607-4cb8-904f-5486d9ad09cf) SignalR.Transports.WebSocketTransport Информация: 0: Завершить запрос (064cb5fb-6607-4cb8-904f-5486d9ad09cf)

Показывает только старый журнал идентификатора соединения и не показывает новый журнал идентификатора соединения. Где идентификатор соединения в журналах выше: 064cb5fb-6607-4cb8-904f-5486d9ad09cf И клиент показывает идентификатор соединения: 14b6dc5c-3beb-41f1-92fe-00b7ad2e36e1

Это происходит, когда я использую сигнализатор для связи с сервера клиенту, и во время открытого соединения я отклоняюсь от страницы, на которой я останавливаю хаб, с помощью $.connection.hub.stop();, но когда я снова перехожу на ту же страницу, я подключаюсь к сигнализатор $.connection.hub.start(), а в журнале клиента указан действительный идентификатор соединения, но теперь клиент не получает никаких данных с сервера

...