2017-08-02 35 views
1

我现在用的是StackExchange.Redis的NuGet为Azure的Redis的,然而,近来,我发现太多的连接,几乎所有的人表示在任“信息最后执行的命令“或 ”取消订阅“。请参阅以下“客户列表”摘录:与去年CMD为Redis的连接太多“退订”

id = 698869 addr = <> fd = 5291 name = <> age = 1037 idle = 5 flags = N db = 0 sub = 0 psub = 0 multi = -1 qbuf = 0 qbuf-free = 0 obl = 0 oll = 0 omem = 0 ow = 0 owmem = 0 events = r cmd = info numops = 30 id = 698871 addr = <> fd = 20761 name = <> age = 1037空闲= 5个标志= N分贝= 0分= 1个P衬底= 0多= -1 qbuf = 0 qbuf - 自由= 0 OBL = 0 OLL = 0 OMEM = 0流量= 0 owmem = 0事件= R CMD = unsubscribe numops = 23 id = 698879 addr = <> fd = 19839 name = <> age = 1037 idle = 5 flags = N db = 0 sub = 1 psub = 0 multi = -1 qbuf = 0 qbuf-free = 0 obl = 0 oll = 0 omem = 0 ow = 0 owmem = 0 events = r cmd =取消订阅 numops = 24

我需要帮助理解为什么这些“信息”和“取消订阅”命令是从nuget触发的?我确信我自己并没有从使用nuget的代码发送这些命令。 我的代码只通过nuget“GET”和“SET”。

回答

0

StackExchange.Redis定期发送“信息复制”命令的Redis来获取有关服务器的详细信息。此外,默认情况下StackExchange.Redis客户端打开两个连接到每个ConnectionMultiplexer.Connect()调用Redis的,一个电话是来自客户端的交互命令,另一个连接是用于发布/订阅。如果您不使用pub/sub,则可以通过ConfigurationOptions()禁用subscribe命令来禁用第二个连接。