1. 问题现象与初步排查
最近在整合SpringBoot和Redis时遇到了一个典型问题:应用启动时报错"Unable to connect to Redis"。这个错误看似简单,但背后可能隐藏着多种配置问题。我花了整整两天时间才彻底解决,过程中排查了网络配置、认证参数、依赖版本等多个环节。下面就把这个排查过程完整记录下来,希望能帮到遇到同样问题的开发者。
首先明确错误表现:当SpringBoot应用尝试连接Redis时,控制台抛出如下异常堆栈:
code复制org.springframework.data.redis.RedisConnectionFailureException:
Unable to connect to Redis; nested exception is io.lettuce.core.RedisConnectionException:
Unable to connect to 127.0.0.1:6379
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 基础环境检查
2.1 Redis服务状态确认
遇到连接问题首先应该检查Redis服务本身是否正常运行。在Linux系统上可以通过以下命令检查:
bash复制# 检查Redis服务状态
systemctl status redis
# 如果未运行则启动服务
sudo systemctl start redis
# 测试Redis命令行连接
redis-cli ping
如果返回"PONG"表示服务正常。Windows用户可以通过任务管理器检查Redis服务进程是否存在。
2.2 网络连通性测试
即使Redis服务运行正常,网络问题也可能导致连接失败。建议使用telnet测试端口连通性:
bash复制telnet 127.0.0.1 6379
如果连接被拒绝,可能是Redis配置绑定了特定IP或启用了保护模式。检查redis.conf中的关键配置:
code复制bind 127.0.0.1 # 注释掉这行可允许所有IP连接
protected-mode no # 关闭保护模式
3. SpringBoot配置解析
3.1 基础配置项检查
SpringBoot连接Redis的核心配置在application.properties中:
pro复制
