【发布时间】:2019-01-20 20:32:35
【问题描述】:
我有一个 .Net Core Web Api 设置,我在其中公开了一个基本上是永久框架的端点。我受到 API 合同的约束,迫使我将其公开。
永久帧推送从 Redis 发布/订阅通道接收到的数据。我将在这个端点上有多个监听器,它们基本上应该是同一频道的单个订阅者。
我使用 StackExchange.Redis。
有一件事我无法理解,那就是如何在这种情况下使用 ConnectionMultiplexer。在我读到的所有地方,我都被告知要拥有一个全局 ConnectionMultiplexer。但是,如果我这样做,当一个人离开并关闭他们正在收听的频道的订阅时,我不会取消所有订阅者的订阅吗?
如果我不这样做,我肯定会遇到内存泄漏。
全局 ConnectionMultiplexer 将与 Redis 的连接数保持在最低限度,但我看不出有任何方法可以避免它。
我有什么误解吗?
【问题讨论】:
标签: asp.net-core-webapi publish-subscribe stackexchange.redis