Сигнальные сессии с F5 и Citrix

У нас есть веб-приложение (угловое), которое должно взаимодействовать с приложением winform. мы делаем это через SignalR. браузер и winform развернуты на сервере Citrix. Есть веб-ферма серверов IIS, и на тех, у нас есть сервисы webapi, а также концентраторы signalR.

вся сетевая активность проходит через нагрузочный баланс F5.

Проблема, с которой мы сталкиваемся, заключается в том, чтобы убедиться, что веб-приложение, работающее в Chrome, и приложение Windows Form подключаются к одному и тому же SignalR Hub Server.

мы не можем использовать сессии с использованием stickey на основе Origin IP, поскольку все пользователи используют инфраструктуру citrix, поэтому все они имеют одинаковый IP-адрес источника. используя cookie - я не уверен, что cookie используется совместно браузером и приложением winform. и в любом случае cookie в сценарии websocket не работает (верно?)

это единственное решение с использованием объединительной платы? (в данный момент не используется ядро ​​dotnet)

1 ответ

Переопределить или изменить исходный сигнал

Частная задача ProcessNegotiationRequest->

   string connectionId = !string.IsNullOrEmpty(context.Request.QueryString["ConnId"]) ? context.Request.QueryString["ConnId"]: connectionId = Guid.NewGuid().ToString("d");

И отправить conId в строке запроса

Другие вопросы по тегам