gpt4 book ai didi

redis - "ConnectionMultiplexer.IsConnected"贵吗?

转载 作者:IT王子 更新时间:2023-10-29 06:01:33 25 4
gpt4 key购买 nike

在我的缓存 AddItemGetItem 方法中,我在继续之前检查到 redis 的连接是否存在,是 ConnectionMultiplexer.IsConnected昂贵的方法调用?还是我应该捕获异常并在这种情况下重新连接?

最佳答案

查看ConnectionMultiplexer.IsConnected代码:

public bool IsConnected
{
get
{
var tmp = serverSnapshot;
for (int i = 0; i < tmp.Length; i++)
if (tmp[i].IsConnected) return true;
return false;
}
}

似乎这里完成的所有工作都是通过服务器端点来查看是否至少有一个服务器端点连接。

查看ServerEndPoint.IsConnected代码:

public bool IsConnected
{
get
{
var tmp = interactive;
return tmp != null && tmp.IsConnected;
}
}

此处完成的所有工作都是返回交互式(PhysicalBridge 类型)IsConnected 值。

查看PhysicalBridge.IsConnected代码:

public bool IsConnected => state == (int)State.ConnectedEstablished;

你可以看到这里所做的所有工作都是返回两个 int 是否相等。

所以调用 ConnectionMultiplexer.IsConnected 属性似乎只做了很少的工作。

关于redis - "ConnectionMultiplexer.IsConnected"贵吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35517135/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com