更新时间:2024-07-29 GMT+08:00

Redis实例连接失败的原因排查

初步排查:

  • 检查连接地址

    连接地址可从管理控制台的实例详情页面获取。

  • 检查密码

    密码输入错误时,端口可以连接上,但鉴权认证失败。

  • 检查端口

    VPC内访问,Redis实例端口默认为6379。

  • 检查带宽是否使用超限

    当实例使用带宽达到实例规格上限,可能会导致部分Redis连接超时现象。

  • 如果是Redis 3.0实例,检查安全组的入方向规则

    VPC内访问时,如果Redis客户端和Redis实例绑定了不同的安全组,则需要将Redis实例的入方向安全组放开6379端口。

    具体请参考:安全组配置和选择

  • 如果是Redis 4.0/5.0/6.0实例,检查白名单配置

    如果实例开启了白名单,在使用客户端连接时,需要确保客户端IP在白名单内,如果不在白名单,会出现连接失败。

    具体配置操作,可以参考管理实例白名单

    客户端IP如果有变化,需要将变化后的IP加入白名单。

  • 检查实例配置参数notify-keyspace-events

    建议将notify-keyspace-events参数配置为Egx。

进阶排查

  • Jedis连接池报错
  • 出现Read timed outCould not get a resource from the pool

    排查是否使用了keys命令,keys命令会消耗大量资源,造成Redis阻塞。建议使用scan命令替代,且避免频繁执行。