.net 如何将redis群集与StackExchange.redis一起使用?
我正在寻找使用的高可用性。 我的第一个方法是尝试使用Redis Sentinel,但由于包的功能,没有成功 我在Docker中有一个6节点集群(3个主节点和3个从节点)。我的应用程序能够连接到这3个主机,但当我关闭或暂停主机容器时,我的应用程序会抛出一个RedisTimeoutException,因为它无法到达之前连接的节点 这是在暂停主机之前运行.net 如何将redis群集与StackExchange.redis一起使用?,.net,redis,stackexchange.redis,.net,Redis,Stackexchange.redis,我正在寻找使用的高可用性。 我的第一个方法是尝试使用Redis Sentinel,但由于包的功能,没有成功 我在Docker中有一个6节点集群(3个主节点和3个从节点)。我的应用程序能够连接到这3个主机,但当我关闭或暂停主机容器时,我的应用程序会抛出一个RedisTimeoutException,因为它无法到达之前连接的节点 这是在暂停主机之前运行群集节点命令的输出 这是在暂停主机后运行群集节点命令的输出 这是我的应用程序抛出的异常 目前,我正在连接3位大师级人物 private cons
群集节点命令的输出
这是在暂停主机后运行群集节点命令的输出
这是我的应用程序抛出的异常
目前,我正在连接3位大师级人物
private const string Host = "10.0.0.2:7000, 10.0.0.3:7001, 10.0.0.4:7002";
private static readonly ConnectionMultiplexer Connection = ConnectionMultiplexer.Connect(Host);
试用
RedisClusterConfiguration redisClusterConfiguration = new RedisClusterConfiguration(nodesList);
连接到Redis Cluser需要此操作。尝试使用
RedisClusterConfiguration redisClusterConfiguration = new RedisClusterConfiguration(nodesList);
这是连接到Redis Cluser所必需的。Sentinel支持现在是在连接字符串级别上烘焙的,因此如果您在连接详细信息中设置服务名称并提供Sentinel地址,这应该“正常工作”。Sentinel支持现在是在连接字符串级别烘焙的,因此这应该“正常工作”如果您在连接详细信息中设置服务名称,并提供哨兵地址。我不知道SE.Redis中有RedisClusterConfiguration
,我有一种预感,我会注意到。。。你能解释一下这是从哪里来的吗?我不知道SE.Redis中有RedisClusterConfiguration
,我有预感我会注意到。。。你能澄清这是从哪里来的吗?