我在连接字符串中声明了channelPrefix,通过使用ConfigurationOptions.Parse可以知道它已正确地从字符串中解析出了channelPrefix。我假设如果打开两个Microsoft.Extensions.Caching.StackExchangeRedis.RedisCache实例,其中每个实例都具有相同的连接字符串,但不同的channelPrefix值除外,则Redis将为这两个键维护单独的值,但事实并非如此我所看到的。当使用RedisCache的一个实例为键设置值时,可以使用相同的键从另一个实例中检索值。我是完全误解了channelPrefix是做什么的,还是我们的Redis服务器配置为不遵循channelPrefix的方式?

最佳答案

“通道”的概念(尤其是RedisChannel类型)与pub / sub API有关,而不与keyspace DB API有关。对于您想要的东西,您需要使用.WithKeyPrefix()获得的IDatabase上的GetDatabase()扩展方法。

关于redis - StackExchange Redis ChannelPrefix不确定键范围,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56859883/

10-12 21:24