springBoot整合redis启动报错:event executor terminated

springBoot整合redis启动报错:java.util.concurrent.RejectedExecutionException: event executor terminated

背景

redis一主两从三哨兵部署模式搭建完成后,需要整合springCloud项目,替换掉之前的redis单机模式,更改nacos配置中心中的redis配置之后,重启相关服务发现服务报错一直起不来。(ps:服务docker容器化部署的)

具体错误

在这里插入图片描述

问题分析

报错翻译过来就是:
拒绝的执行异常:事件执行器已终止,很明显是redisClient客户端服务出了问题,查了很多帖子都没有找到解决方案。听说可能是由于内存溢出的错误导致 eventloop 的状态为终止,我猜测应该是新的redis服务出了问题,就再次仔细查看启动日志,发现了另一个错误。具体如截图:
在这里插入图片描述
看到这个报错我似乎猜到了问题。这要说明一下,我的redis服务部署的是一主二从的模式,且是在一台服务器上,所以就只能开启三个不同的端口来启动三个Redis服务,主服务6479,从服务6480,6481端口,有可能是从服务的网络策略问题,在安装的时候我好想只开放了6479端口。

解决方法

开放从节点的服务端口,让外部服务可以访问到:
1.先开启防火墙:
systemctl start firewalld

2.开放指定端口的:
firewall-cmd --zone=public --add-port=6481/tcp --permanent

3…重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload

再次重启服务发现启动不在报错了,有时候真的不能揪着一个问题不放,多看看有无更明显的报错,很明显我这里遇到的 event executor terminated 报错是由 哨兵模式的redis服务不可用引起的。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值