spring-cloud-tencent icon indicating copy to clipboard operation
spring-cloud-tencent copied to clipboard

预计何时能够支持服务无损上下线?

Open wandy0092 opened this issue 2 years ago • 9 comments

预计要迭代多少个版本后,会能够支持服务无损上下线?比较关心此特性,谢谢。

wandy0092 avatar Apr 19 '23 10:04 wandy0092

@wandy0092 目前有计划实现优雅上下线,您也可以聊一聊您对无损上下线的理解和诉求,以便能满足您的使用要求。

SkyeBeFreeman avatar Apr 19 '23 11:04 SkyeBeFreeman

@wandy0092 目前有计划实现优雅上下线,您也可以聊一聊您对无损上下线的理解和诉求,以便能满足您的使用要求。

@SkyeBeFreeman 希望能在服务上下线的切换时候,做到请求流量无失败,就是类似现在阿里云中的MSE对dubbo无损滚动发布所提供的效果。^_^感谢回复

wandy0092 avatar Apr 24 '23 08:04 wandy0092

@wandy0092 目前有计划实现优雅上下线,您也可以聊一聊您对无损上下线的理解和诉求,以便能满足您的使用要求。

@SkyeBeFreeman 希望能在服务上下线的切换时候,做到请求流量无失败,就是类似现在阿里云中的MSE对dubbo无损滚动发布所提供的效果。^_^感谢回复

@wandy0092 了解。服务上下线无失败请求,是优雅上下限最基本的能力,社区在开发的时候会注意这方面的测试。

SkyeBeFreeman avatar Apr 25 '23 03:04 SkyeBeFreeman

1.增加配置:server.shutdown=graceful 2.监听ContextClosedEvent事件,主动反注册

增加这两个功能是不是就可以满足无损下线了

michaelwangwangwang avatar Apr 27 '23 02:04 michaelwangwangwang

1.增加配置:server.shutdown=graceful 2.监听ContextClosedEvent事件,主动反注册 增加这两个功能是不是就可以满足无损下线了

@SkyeBeFreeman @michaelwangwangwang 不知道届时是否也会提供web可视化的admin控制台,通过点击按钮等,进行服务的无损摘除恢复等上下线操作。

wandy0092 avatar Apr 27 '23 02:04 wandy0092

1.增加配置:server.shutdown=graceful 2.监听ContextClosedEvent事件,主动反注册 增加这两个功能是不是就可以满足无损下线了

@SkyeBeFreeman @michaelwangwangwang 不知道届时是否也会提供web可视化的admin控制台,通过点击按钮等,进行服务的无损摘除恢复等上下线操作。

@wandy0092 可以通过在控制台上设置实例的隔离状态来完成无损摘除和恢复。 image

SkyeBeFreeman avatar May 05 '23 11:05 SkyeBeFreeman

是的,我们现在就是这样做的 1.配置 server.shutdown=graceful 2.在监听ContextClosedEvent事件之后,先从springcontext获取PolarisAutoServiceRegistration实例, 调用其stop()方法手动反注册, 然后Thread.sleep() 10s, 确保上游服务有足够的时间做服务发现, sleep时间可以通过配置传入, 这块最好结合k8s的延迟关闭时间来配置

如果项目里使用了Nacos等,可能会多次触发ContextClosedEvent事件, 要做判断..只执行一次就好

以上操作后,可以实现无损下线

beretaa avatar Jun 07 '23 04:06 beretaa

@SkyeBeFreeman 请问在控制台手动隔离服务时,是否会影响当前正在处理(未执行完)的请求线程? sct

wandy0092 avatar Jun 15 '23 16:06 wandy0092

@SkyeBeFreeman 请问在控制台手动隔离服务时,是否会影响当前正在处理(未执行完)的请求线程? sct

不会,只是表示不会在接收到流量了

chuntaojun avatar Jun 15 '23 17:06 chuntaojun

无损上下线文档:https://github.com/Tencent/spring-cloud-tencent/wiki/%E6%97%A0%E6%8D%9F%E4%B8%8A%E4%B8%8B%E7%BA%BF%E6%8F%92%E4%BB%B6

SkyeBeFreeman avatar Mar 19 '24 08:03 SkyeBeFreeman