首页 新闻 会员 周边 捐助

.net使用StackExchange.Redis出现的问题

0
悬赏园豆:5 [已解决问题] 解决于 2020-09-04 17:28

这是什么原因,我端口和ip都没有问题

执行的时候出现 NotImplementedException: The ConnectionMultiplexer is not a Sentinel connection.

问题补充:

我用的版本是2.1的StackExchange.Redis,然后会提示这个异常,然后换到2.0.6的StackExchange.Redis就没问题了,难道新版本的必须要有一个哨兵地址?

用2.0的可以运行

灬丶的主页 灬丶 | 初学一级 | 园豆:3
提问于:2020-09-04 15:10
< >
分享
最佳答案
0

用2.1 test connect("your redis address") 如果还出错在说, 另外出错的堆栈信息都贴出来. 我这边2.1.x 用的很好.

收获园豆:5
czd890 | 专家六级 |园豆:14488 | 2020-09-04 16:38

我用2.0的可以运行,说明地址没问题,堆栈信息传上去了

灬丶 | 园豆:3 (初学一级) | 2020-09-04 16:42

@灬丶: port 是多少?

czd890 | 园豆:14488 (专家六级) | 2020-09-04 17:19

@czd890: port我从新设置的端口,不是默认的6379

灬丶 | 园豆:3 (初学一级) | 2020-09-04 17:20

@灬丶: servicename 不要赋值

czd890 | 园豆:14488 (专家六级) | 2020-09-04 17:22

@czd890: 我试下

灬丶 | 园豆:3 (初学一级) | 2020-09-04 17:22

@czd890: 谢了,可以了,为啥啊,老版本都可以

灬丶 | 园豆:3 (初学一级) | 2020-09-04 17:24

@灬丶: https://github.com/StackExchange/StackExchange.Redis/blob/ad94bd328eefb38012c9744a92bd28f01d59ed2d/src/StackExchange.Redis/ConnectionMultiplexer.cs#L896

会根据servicename 判断是不是要连接到sentinel机器.
不要看着字段像什么就用哦, 看看字段解释

//
        // Summary:
        //     The service name used to resolve a service via sentinel.
        public string ServiceName

czd890 | 园豆:14488 (专家六级) | 2020-09-04 17:27
其他回答(2)
0

试试 ConnectionMultiplexer.Connect(connectionString); 报错不

flyfishing | 园豆:927 (小虾三级) | 2020-09-04 16:36

就是执行到return那里报的错

支持(0) 反对(0) 灬丶 | 园豆:3 (初学一级) | 2020-09-04 16:38
0

你的redis是集群的吗?如果是单机的可以参考:https://www.cnblogs.com/Naylor/p/13152994.html

Naylor | 园豆:139 (初学一级) | 2020-09-04 17:03

单机的

支持(0) 反对(0) 灬丶 | 园豆:3 (初学一级) | 2020-09-04 17:11
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册