Redis无法在繁忙负载中连接
我得到这个错误。你的工作是什么 无法连接到位于127.0.0.1:6379的redis实例>>堆栈跟踪: 在ServiceStack.Redis.RedisNativeClient.Connect()的ServiceStack.Redis.RedisNativeClient.AssertConnectedSocket()上 在ServiceStack.Redis.RedisNativeClient.SendCommand(字节[][]cmdWithBinaryArgs)的ServiceStack.Redis.RedisNative ServiceStack.Redis.RedisClientList.GetEnumerator()中的Client.SendExpectLong(字节[][]cmdWithBinaryArgs) t Common.Tools.redidbHelper.checkListInt(字符串myKey,Int32 id)>>内部异常:消息:无连接 无法创建ld,因为目标计算机主动拒绝了它127.0.0.1:6379>内部异常:stacktrace:at S System.Net.Sockets.Socket.Connect(IPAddress[]地址,Int32端口)位于System.Net.Sockets.Socket.Connect(Stri 在ServiceStack.Redis.RedisNativeClient.Connect()当前堆栈:在System.Environment上。 位于System.Environment.get_StackTrace()的GetStackTrace(异常e,布尔needFileInfo)位于Common.Tools.e 位于Common.Tools.redidbHelper.checkListInt(字符串)的xtensionHelper.saveAsDebug(myEx除外,字符串aciklama)Redis无法在繁忙负载中连接,redis,
servicestack,Redis,
servicestack,我得到这个错误。你的工作是什么 无法连接到位于127.0.0.1:6379的redis实例>>堆栈跟踪: 在ServiceStack.Redis.RedisNativeClient.Connect()的ServiceStack.Redis.RedisNativeClient.AssertConnectedSocket()上 在ServiceStack.Redis.RedisNativeClient.SendCommand(字节[][]cmdWithBinaryArgs)的ServiceStack
myKey,Int32 id)这是当RedisClient无法创建TCP连接时发生的情况。在这里抛出异常是正确的行为。我自己也有这个问题。 您使用的Redis二进制文件是什么(来自哪个来源,GitHub,非官方版本) 我发现的原因是: 这实际上是Redis说它无法创建连接的方式。(所提供的跟踪也解释了这一点) 这应该是一个更明确的例外,说明这是来自Redis,而不是防火墙或任何IMHO 我猜您正在x64体系结构上运行32位内置二进制文件 如果您从链接下载版本: 并使用MS C编译器(如免费VS 2012 Express)构建它,您应该能够运行生成的二进制文件而不会出现此问题 我不能做出任何承诺,但这对我来说是有效的
编辑:另外,请确保以管理员身份启动redis服务器,并在防火墙中授予必要的权限,否则您将无法连接redis cli客户端到的服务器 我想可能是Redis的负载很忙。然后我以为是ServiceStack。但最终,Windows中的TCP发布速度不够快。TCP不会释放关闭的连接,直到条目的值过期。我将TcpTimeWaitDelay设置为45秒。并设置MaxUserPort 将端口范围调整为1025-64511 确保重新启动Windows
另请参见:查看下面我的建议。请确保首先启动redis-server.exe,以便首先连接到服务器。