У меня есть настройка .Net Core Web Api, в которой я предоставляю конечную точку, которая в основном представляет собой вечный кадр. Я ограничен контрактом API, который заставляет меня выставлять его как таковой.
Этот бесконечный кадр передает данные, полученные из паба / подканала Redis. У меня будет несколько слушателей на этой конечной точке, и они в основном должны быть отдельными подписчиками на один и тот же канал.
Я использую StackExchange.Redis.
Есть одна вещь, которую я не могу обернуть, это то, как использовать ConnectionMultiplexer в этом сценарии. Везде, где я читаю об этом, мне говорят, что у меня должен быть один глобальный ConnectionMultiplexer. Но если я сделаю это, не откажусь ли я от подписки всех подписчиков, когда кто-то покидает и закрывает подписку на канал, который они все слушают?
Если я не сделаю этого, я уверен, что у меня возникнет утечка памяти.
Глобальный ConnectionMultiplexer поддерживает минимальное количество подключений к Redis, но я не вижу здесь способа избежать этого.
Есть что-то, что я неправильно понял?