首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ServiceStack.Redis无法连接到Digitalocean托管的redis实例

ServiceStack.Redis无法连接到Digitalocean托管的redis实例
EN

Stack Overflow用户
提问于 2020-02-02 02:50:19
回答 1查看 241关注 0票数 0

最近,我开始将job processor从Node.js转换到.net核心,并选择使用ServiceStack.Redis来管理到Redis的连接。

令人恼火的是,如果不抛出异常,我就无法让它连接到托管Redis。这个错误到底是什么意思,有什么线索吗?

代码语言:javascript
复制
var redisManager = new BasicRedisClientManager(0,Environment.GetEnvironmentVariable("REDIS"));
var redis = redisManager.GetClient();
代码语言:javascript
复制
Unhandled exception. ServiceStack.Redis.RedisResponseException: unknown command `ROLE`, with args beginning with: 
   at ServiceStack.Redis.RedisNativeClient.ReadComplexResponse() in C:\BuildAgent\work\b2a0bfe2b1c9a118\src\ServiceStack.Redis\RedisNativeClient_Utils.cs:line 1075
   at ServiceStack.Redis.RedisNativeClient.SendReceive[T](Byte[][] cmdWithBinaryArgs, Func`1 fn, Action`1 completePipelineFn, Boolean sendWithoutRead) in C:\BuildAgent\work\b2a0bfe2b1c9a1
18\src\ServiceStack.Redis\RedisNativeClient_Utils.cs:line 616
   at ServiceStack.Redis.RedisNativeClient.SendExpectComplexResponse(Byte[][] cmdWithBinaryArgs) in C:\BuildAgent\work\b2a0bfe2b1c9a118\src\ServiceStack.Redis\RedisNativeClient_Utils.cs:l
ine 744
   at ServiceStack.Redis.RedisNativeClient.Role() in C:\BuildAgent\work\b2a0bfe2b1c9a118\src\ServiceStack.Redis\RedisNativeClient.cs:line 846
   at ServiceStack.Redis.RedisClient.GetServerRole() in C:\BuildAgent\work\b2a0bfe2b1c9a118\src\ServiceStack.Redis\RedisClient.cs:line 1065
   at ServiceStack.Redis.RedisResolver.CreateRedisClient(RedisEndpoint config, Boolean master) in C:\BuildAgent\work\b2a0bfe2b1c9a118\src\ServiceStack.Redis\RedisResolver.cs:line 84
   at ServiceStack.Redis.RedisResolver.CreateMasterClient(Int32 desiredIndex) in C:\BuildAgent\work\b2a0bfe2b1c9a118\src\ServiceStack.Redis\RedisResolver.cs:line 148
   at ServiceStack.Redis.BasicRedisClientManager.GetClient() in C:\BuildAgent\work\b2a0bfe2b1c9a118\src\ServiceStack.Redis\BasicRedisClientManager.cs:line 104
EN

回答 1

Stack Overflow用户

发布于 2020-02-05 18:55:09

任何其他人都会被这个问题困扰,特别是如果你使用的是来自DigitalOcean的托管REDIS。

本质上,角色命令(以及其他命令)不可用,因此在此库中,您必须设置以下标志。

代码语言:javascript
复制
RedisConfig.VerifyMasterConnections = false;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60020116

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档