1
你好,我这边场景: 1、微服务应用实例发版部署前会通过curl 向nacos提交下线请求 2、等应用实例完成发版jar服务正常启动后,需要去nacos一个个点上线才行 请问如何解决手动一个个点应用服务上线的问题,谢谢
你好,我这边场景: 1、微服务应用实例发版部署前会通过curl 向nacos提交下线请求 2、等应用实例完成发版jar服务正常启动后,需要去nacos一个个点上线才行 请问如何解决手动一个个点应用服务上线的问题,谢谢
提交下线请求是springcloud Alibaba的客户端提交吗,还是你们用运维接口提交的
可以用ApplicationRunner等服务启动成功后通过curl发送一个上线请求
通过curl命令请求接口方式:/nacos/v1/ns/instance
上线完一样走这个接口,把enabled改为true就行了吧
1、微服务是基于k8s,在发布前可以执行shell手动下线 2、如果执行这个上线接口,会出现服务本身未完成初始化就会注册到nacos进行请求处理,导致请求异常情况。
那你就要去改代码了,可以使用namingService去监听自己的服务上下线,上线之后发curl请求,理论上这些事应该是devops来做的,不知道能不能满足你的要求
/nacos/v1/ns/instance
文档中有解释。操作下线的实例需要再操作上线, 保证运维操作的对称性。
或者等待元数据过期后再重新注册。