就绪检查在无损上线方案中的作用是确保新应用在处理正式流量前已经达到就绪状态。通过执行一系列检查(如依赖服务是否可用、关键资源是否初始化完成等),可以确保新应用在接收流量前已经准备好,从而避免因为未就绪而导致的服务不可用或性能问题。
K8s提供了就绪检查机制,用于在实例就绪前进行健康检查。然而,K8s无法感知微服务何时就绪,当端口启动时,K8s会认为应用已经就绪,这可能会导致刚启动的服务未完全注册到注册中心,而旧的实例被下线,从而引发消费端调用异常,并在调用过程中出现service no provider异常。
当微服务生命周期与K8s就绪检查功能相关联时,可以通过Agent的无侵入方式为应用提供一个检测其是否完成注册的端口。当应用注册完成后返回200状态码,帮助K8s判定应用已经就绪;如果未完成注册,则返回500状态码,帮助K8s判定应用未就绪。
——参考链接。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。