Spring在k8s中无限重启问题之Nacos服务中心

场景

由于众所周知的原因,要求Spring服务存活在k8s里面,要求配置中心使用nacos。在这样一个环境下,不知道什么原因导致k8s里面的Spring服务不断重启。

异常现象

主要的日志现象就是如下图:

不断出现received push data...现象。在这样不断接收数据一段时间,就会导致Spring应用重启。

还有一个现象就是spring在不断给nacos上报心跳的请求,然后,直接登录k8s的pod本地调用curl http://127.0.0.1:8081/actuator/health,发现本地访问该健康检查请求,都变得卡顿了。

可能原因

Spring不断上报nacos心跳,导致Spring应用卡顿,进一步导致影响到k8s的健康检查,从而,导致k8s判断Spring应用挂了,从而,重启Spring应用。

解决

最后,通过设置禁用nacos的服务发现配置,但是,仍旧保留nacos的配置中心作用。

yaml 复制代码
spring:
  #nacos组件
  cloud:
    nacos:
      discovery:
        # 禁用nacos服务发现
        enabled: false

总结

用了k8s的服务发现,我不就应该再用了nacos的服务发现。

相关推荐
陈大爷(有低保)1 小时前
UDP Socket聊天室(Java)
java·网络协议·udp
kinlon.liu1 小时前
零信任安全架构--持续验证
java·安全·安全架构·mfa·持续验证
哈喽,树先生1 小时前
1.Seata 1.5.2 seata-server搭建
spring·springcloud
FLGB1 小时前
Flink 与 Kubernetes (K8s)、YARN 和 Mesos集成对比
大数据·flink·kubernetes
王哲晓1 小时前
Linux通过yum安装Docker
java·linux·docker
java6666688881 小时前
如何在Java中实现高效的对象映射:Dozer与MapStruct的比较与优化
java·开发语言
Violet永存1 小时前
源码分析:LinkedList
java·开发语言
执键行天涯1 小时前
【经验帖】JAVA中同方法,两次调用Mybatis,一次更新,一次查询,同一事务,第一次修改对第二次的可见性如何
java·数据库·mybatis
Jarlen2 小时前
将本地离线Jar包上传到Maven远程私库上,供项目编译使用
java·maven·jar
蓑 羽2 小时前
力扣438 找到字符串中所有字母异位词 Java版本
java·算法·leetcode