Stackexchange.Redis 为什么ConnectionMultiplexer.Connect 建立两个客户端连接?

Stackexchange.Redis why does ConnectionMultiplexer.Connect establishes two client connections?

我很好奇为什么 ConnectionMultiplexer.Connect(options) 尝试将 2 个客户端而不是 1 个客户端连接到 RedisDB?每次连接时,我都会看到另外 2 个客户端连接到我的 RedisDB。

因为与 pub/sub 订阅相比,redis 需要单独连接用于交互式命令。如果你不使用 pub/sub,你可以告诉选项禁用 SUBSCRIBE 命令,在这种情况下,我 相信 第二个连接没有建立。

不使用redis可以关闭二次连接pub/sub

var config = ConfigurationOptions.Parse(redisConnectionString);
config.CommandMap = CommandMap.Create(new HashSet<string> { "SUBSCRIBE" }, false);
connection = ConnectionMultiplexer.Connect(config);