【问题标题】:Redis unable to connect in busy loadRedis 在繁忙的负载中无法连接
【发布时间】:2013-06-17 07:45:45
【问题描述】:

我收到此错误。解决方法是什么?

无法连接到位于 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) >> 内部异常 :message : No connection cou ld 是因为目标机器主动拒绝它 127.0.0.1:6379 >> 内部异常 :stacktrace : at S ystem.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) at System.Environment.get_StackTrace() at Common.Tools.E xtensionHelper.saveAsDebug(Exception myEx, String aciklama) at Common.Tools.RedisDBHelper.checkListInt(String myKey, Int32 id)

【问题讨论】:

  • 在下面查看我的建议。一定要先启动 redis-server.exe,这样一开始你就有一个服务器要连接。

标签: redis servicestack


【解决方案1】:

我认为可能是 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 connection/buffer-size limit exceeded

【讨论】:

    【解决方案2】:

    这是当 RedisClient 无法创建 TCP 连接时发生的情况。在这里抛出异常是正确的行为。

    【讨论】:

      【解决方案3】:

      我自己也遇到过这个问题。 你正在使用什么 Redis 二进制文件(来自什么来源、GitHub、非官方构建)?

      我找到的原因是: 这实际上是 Redis 无法创建连接的说法。 (正如提供的跟踪也解释了) 应该是一个更明确的例外,说明这是来自 Redis 而不是防火墙或任何恕我直言。

      我的猜测是您正在 x64 架构上运行 32 位构建的二进制文件。

      如果您从链接下载版本:MsOpenTech Group 并使用 MS C 编译器(如免费的 VS 2012 Express)构建它,您应该能够运行生成的二进制文件而不会出现此问题。

      无法做出任何承诺,但这对我有用。

      编辑:另外,请确保启动 redis-server(以管理员身份)并在防火墙中授予必要的权限,否则您将没有服务器来连接您的 redis-cli 客户端!

      【讨论】:

        猜你喜欢
        • 2012-11-03
        • 1970-01-01
        • 2015-01-31
        • 2013-07-28
        • 2011-10-14
        • 1970-01-01
        • 1970-01-01
        • 2021-07-12
        • 2015-03-25
        相关资源
        最近更新 更多