nacos注册服务失败_解决 nacos 在 Spring boot admin 中不能监控到新服务注册的问题...

本文介绍了在使用Nacos作为注册中心,并整合Spring Boot Admin时遇到的问题,即只有在Admin启动前的服务能被监控。通过分析Eureka和Consul的Client,发现它们依赖HeartbeatEvent事件进行服务注册。解决方案是将官方未发布的NacosWatch相关代码复制到项目中,调整配置,使新启动的服务能够自动同步到Spring Boot Admin。
摘要由CSDN通过智能技术生成

简介

笔者最近在新公司开始重新架构公司的微服务,在注册中心选择了 nacos,上家公司 Eureka 遇到了一些坑,想尝试 nacos。整个微服务也会以 Mica 作为微服务核心,感兴趣的朋友可以查看码云链接:https://gitee.com/596392912/mica 。

问题

在 nacos 和 Spring boot admin 整合后发现只有在 admin 启动之前的服务才能被监控到。点进去发现 Spring boot admin 是依赖 HeartbeatEvent 事件进行的新服务的注册。

我们可以看到 Eureka 和 Consul 的 Client 都会发送该事件。

Eureka

Consul

解决问题

本考虑自行去实现并提交给官方,github clone spring-cloud-alibaba 到本地发现代码有变动,官方已经实现了该功能。

但是官方尚未发版,所以笔者考虑把相关代码拷贝到自己的项目中。

首先拷贝 NacosWatch

注意此处有报错,可以写死为下面的值或者自定义 properties配置。

/**

* watch delay,duration to pull new service from nacos server.

*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值