Текущая среда
Мы используем модель Publisher / subscriber с использованием обратных вызовов WCF. У нас есть служба WCF, размещенная в IIS на одном веб-сервере. Любой клиент может подписаться / отписаться, вызвав методы обслуживания, и мы сохраняем / удаляем адрес обратного вызова соответственно с идентификатором клиента в словаре, т.е.
PrivateShared _currentSubscribeers As New Dictionary (из UShort, ICallbackService) ()
Словарь является статическим членом и используется в веб-приложении (в памяти не является постоянным)
Новая среда
Сейчас мы переводим наши сайты на новые серверы. У нас будет два сервера, на которых размещен сервис с балансировщиком нагрузки между ними.
Теперь нам нужно выяснить, как мы собираемся вести список подписчиков, который может быть доступен на обоих серверах. Конечно, мы не можем использовать то же самое в словаре памяти в этом сценарии.
Мы ищем любой способ, которым мы можем разделить словарь между серверами.
Мы попытались сохранить в БД, но его нельзя сериализовать или использовать на другом сервере.
Мы потратили немного времени на поиск, но не нашли для этого решения, в котором мы могли бы поделиться адресом обратного вызова между серверами.
Может ли кто-нибудь помочь нам понять, как мы можем достичь этого? или любой другой вариант, который мы можем использовать?
Я был бы очень благодарен вам за вашу помощь. Жду вашего любезного ответа.