Я использую SignalR и веб-ферму в IIS, в настоящее время с 3 серверами, и запросы сбалансированы по нагрузке через ARR.
Существуют определенные внешние события, которые я хочу обработать серверомкоторый клиент подключен.Поэтому я хочу отследить, к какому из 3 серверов клиент подключен в данный момент.
Я подумал, что мог бы сделать это с помощью OnConnected и в этом методе сохранить MachineName против ConnectionID в redis.Проблема в том, что OnConnected, кажется, называется другим сервером, чем тот, к которому подключен клиент.
При расследовании кажется, что существует три вызова, один из которых к / negiotateодин для / подключить и один для / начать.Кажется, что / connect - это соединение веб-сокета, которое поддерживается на протяжении всего времени, остальные просто временные.Эти три соединения могут происходить на разных серверах, и кажется, что соединение websocket может быть с сервером A (так что это сервер, на который собирается клиентское соединение SignalR), но OnConnected запускается на сервере B.
Мне было интересно, пропускаю ли я что-нибудь, что позволит мне увидеть, к какому серверу фактически подключено соединение SignalR?
Спасибо,
Будет