我收到这个错误。解决方法是什么?
无法连接到位于 127.0.0.1:6379 的 redis 实例 >> 堆栈跟踪:
在 ServiceStack.Redis.RedisNativeClient.Connect() 在 ServiceStack.Redis.RedisNativeClient.AssertConnectedSocket()
在 ServiceStack.Redis.RedisNativeClient.SendCommand(Byte[][] cmdWithBinaryArgs) 在 ServiceStack.Redis.RedisNative
ServiceStack.Redis.RedisClientList.GetEnumerator() 中的 Client.SendExpectLong(Byte[][] cmdWithBinaryArgs)
t Common.Tools.RedisDBHelper.checkListInt(String myKey, Int32 id) >> 内部异常:消息:没有连接
ld 是因为目标机器主动拒绝它 127.0.0.1:6379>> 内部异常:stacktrace:在 S
System.Net.Sockets.Socket.Connect(IPAddress[] 地址,Int32 端口)在 System.Net.Sockets.Socket.Connect(Stri
ng 主机,Int32 端口)在 ServiceStack.Redis.RedisNativeClient.Connect()CurrentStack :在 System.Environment。
GetStackTrace(Exception e,Boolean needFileInfo)在 System.Environment.get_StackTrace() 在 Common.Tools.E
xtensionHelper.saveAsDebug(异常 myEx,字符串 aciklama)在 Common.Tools.RedisDBHelper.checkListInt(字符串
myKey, Int32 id)
最佳答案
我想可能是Redis负载繁忙。然后我以为是ServiceStack。但归根结底,还是Windows中的TCP发布速度不够快。在条目的值过期之前,TCP 不会释放已关闭的连接。我将 TcpTimeWaitDelay 设置为 45 秒。 http://technet.microsoft.com/en-us/library/cc938217.aspx并设置 MaxUserPort http://mashijie.blogspot.com/2009/05/change-default-setting-of-tcp-ports.html
调整端口范围为1025-64511
确保重新启动 Windows
关于Redis 在负载繁忙时无法连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17213870/