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);
我很好奇为什么 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);