SpringBoot服务在服务启动完成前被提前注册到nacos
springboot服务在服务启动完成前提前注册到nacos,gateway拿到服务提供者信息后转发请求导致请求异常
上图中的例子两个时间相差3秒时间(估计因为我机子当时在做测试,cpu基本满了,导致时间相差比较大)。
版本信息:
nacos版本:2021.0.5.0
springboot版本:2.6.13
gateway中有额外写一个监听器监听nacos事件,如果是NamingEvent,则更新服务缓存。
看代码应该是这里触发了注册:
提交bug给nacos,回复不是nacos的职责,所以不处理
当然有其他方法也能做到无损发布,比如结合k8s的就绪探针等等。但这样会动底层,所以自己修改了nacos源码,增加了一个就绪探测的功能,就绪后才注册到nacos中
https://github.com/alibaba/nacos/issues/11061
系统推荐
- getPath vs getAbsolutePath vs getCanonicalPath
- Btrace入门
- ES6.2.3(3节点)数据迁移到ES7.4.1(5节点)
- JetBrains IDE 全破解
- 随记
- Censys搜索引擎学习
- MAC CMS
- Redis高可用
- 搭建基于docker的elk平台来分析java日志
- 行转列不再复杂:SQL高手都在用的技巧揭秘
- Markdown软件比对
- intro
- 随机毒鸡汤:心甘情愿四个字,真是卑微又勇敢。