redis连接集群失败

文章探讨了SpringBoot应用在尝试连接远程Redis集群时失败的问题,主要原因是未正确设置bindIP(如127.0.0.1)和保护模式,以及在集群创建命令中使用了本地IP而非宿主机IP。解决方案强调了确保正确指定宿主机IP的重要性,以实现跨节点间的通信。
摘要由CSDN通过智能技术生成

使用springboot连接远程redis集群失败,除了一下原因外:

  • 没有注释bind 127.0.0.1
  • 没有关闭保护模式,即protected-mode yes(改为no)

这些原因都不是没有解决我的问题,造成连接失败的原因还可能是创造集群命令的IP错误:

出错时的命令:

redis-cli --cluster create 127.0.0.1:7000 127.0.0.1:7001 \
127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 \
--cluster-replicas 1 -a 123456

正确的命令的需要指定宿主机的IP

#最好使用的是主机的IP,而不是127.0.0.1
redis-cli --cluster create 192.168.236.100:7000 192.168.236.100:7001 \
192.168.236.100:7002 192.168.236.100:7003 192.168.236.100:7004 192.168.236.100:7005 \
--cluster-replicas 1 -a 123456

原因分析:

连接失败是因为在集群环境中,存储数据和读取数据都是要跨节点的,所以需要节点间相互通信,在使用RedisTemplate访问数据时其实只是访问了集群中的一个节点,当跨节点时,需要和其它节点通信,但是我使用的127.0.0.1,程序误以为我要访问127.0.0.1的redis,但我的redis在远程服务器上,所以会访问失败。

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值