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

时间:2015-01-26 07:00:33

标签: redis stackexchange.redis

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

2 个答案:

答案 0 :(得分:6)

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

答案 1 :(得分:2)

如果您不使用redis pub / sub

,则可以关闭第二个连接
var config = ConfigurationOptions.Parse(redisConnectionString);
config.CommandMap = CommandMap.Create(new HashSet<string> { "SUBSCRIBE" }, false);
connection = ConnectionMultiplexer.Connect(config);