我想在主人改变的时候得到通知为此,我想连接到我的哨兵,但连接多路复用器告诉我,这是不可达的。我做错了什么?
ConnectionMultiplexer redis = ConnectionMultiplexer.Connect("localhost:26380,localhost:26381,localhost:26382");
khbbv19g1#
你可以试试StackExchange.Redis的新版本,它带有sentinel mode功能。你现在可以在sentinel模式下使用如下连接字符串进行连接:
var conn = ConnectionMultiplexer.Connect("172.17.6.45:26379,serviceName=mymaster");
它将自动发现当前的主服务器并返回一个托管连接,该连接将为您处理故障转移。如果您希望收到主服务器更改的通知,可以订阅ConnectionMultiplexer.ConfigurationChanged事件。
ConnectionMultiplexer.ConfigurationChanged
dzjeubhm2#
虽然有一些测试(https://github.com/StackExchange/StackExchange.Redis/blob/master/StackExchange.Redis.Tests/Sentinel.cs),我不确定是否有哨兵功能实现。你可以在这里检查:https://github.com/StackExchange/StackExchange.Redis/issues/22
2条答案
按热度按时间khbbv19g1#
你可以试试StackExchange.Redis的新版本,它带有sentinel mode功能。你现在可以在sentinel模式下使用如下连接字符串进行连接:
它将自动发现当前的主服务器并返回一个托管连接,该连接将为您处理故障转移。如果您希望收到主服务器更改的通知,可以订阅
ConnectionMultiplexer.ConfigurationChanged
事件。dzjeubhm2#
虽然有一些测试(https://github.com/StackExchange/StackExchange.Redis/blob/master/StackExchange.Redis.Tests/Sentinel.cs),我不确定是否有哨兵功能实现。你可以在这里检查:
https://github.com/StackExchange/StackExchange.Redis/issues/22