使用Redisson客户端连接AWS Redis集群时出现间歇性连接拒绝错误
间歇性连接AWS Redis集群被拒绝的排查与解决
问题背景
Spring Boot 2.5.5 + Java 1.8 + Redisson 3.17.5部署在Kubernetes Pod中,首次启动可正常建立24个连接至AWS Redis集群,但Pod重启时偶尔触发Connection refused错误。AWS侧确认Redis集群无异常,升级io.netty至4.1.79-Final后问题仍存在。
连接初始化代码:
Config config = new Config(); config.useSingleServer() .setAddress(<Redis URL>) .setTimeout(30 * 1000); // 超时30秒 Redisson.create(config);
核心报错片段:
org.redisson.client.RedisConnectionException: Unable to connect to Redis server: <Redis URL> ... Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: <Redis URL> Caused by: java.net.ConnectException: Connection refused
排查方向与解决方案
1. 优化Redisson连接池初始化策略
Redisson默认连接池逻辑可能在Pod重启时瞬间发起大量连接请求,触发Redis限流或Pod网络限制。可通过以下配置调整:
- 匹配首次成功的连接池大小,保留最小空闲连接减少重启时的连接创建量
- 增加连接重试次数与间隔,降低单次连接失败的影响
- 单独设置连接超时,避免整体阻塞
修改后配置示例:
Config config = new Config(); config.useSingleServer() .setAddress(<Redis URL>) .setTimeout(30 * 1000) .setConnectionPoolSize(24) // 与首次成功连接数一致 .setConnectionMinimumIdleSize(8) // 保留部分空闲连接 .setRetryAttempts(5) // 增加重试次数 .setRetryInterval(1000) // 重试间隔1秒 .setConnectTimeout(10 * 1000); // 单个连接建立超时 Redisson.create(config);
2. 处理Kubernetes Pod网络初始化延迟
Pod重启时网络接口可能未完全就绪,应用就发起连接请求。可通过两种方式规避:
- 在Deployment中配置
readinessProbe和livenessProbe,确保Pod网络就绪后再启动应用 - 给应用添加启动延迟,或在代码中增加连接前的网络可达性检测
示例Probe配置:
readinessProbe: tcpSocket: host: <Redis URL主机部分> port: <Redis端口> initialDelaySeconds: 10 periodSeconds: 5 livenessProbe: tcpSocket: host: <Redis URL主机部分> port: <Redis端口> initialDelaySeconds: 30 periodSeconds: 10
3. 验证AWS Redis网络配置
即使AWS确认集群无异常,仍需检查:
- Pod所在VPC与Redis集群VPC的路由表是否存在更新延迟
- Redis安全组是否允许Pod所在CIDR段的连接(重启后Pod IP可能变化,避免用固定IP配置安全组)
- Redis的
maxclients参数是否足够,重启时的连接峰值是否触发上限
4. 升级Redisson版本
Redisson 3.17.5存在部分连接池相关的已知问题,升级到3.21.x等稳定新版本可能修复此类间歇性问题。注意:Redisson自带适配的Netty版本,手动升级Netty可能引发兼容性问题,建议依赖Redisson自带的Netty包。
5. 开启Redisson连接日志
启用DEBUG级别的连接日志,便于定位问题触发时机:
config.setLogger(Logger.SLF4J);
同时在日志配置文件(如logback.xml)中添加:
<logger name="org.redisson" level="DEBUG"/>
内容的提问来源于stack exchange,提问作者user5338376
相关产品推荐
相关产品推荐

