偶然听到这个名词,好奇,学习一下。
what
分布式架构中,服务停机部署过程中不影响用户的使用、服务部署完成自动加入集群的服务部署方式,属于服务治理的范畴。
why
分布式架构中,某台机器在停机部署过程中无法响应用户请求,如果此时还有流量进来,将无法进行请求响应,影响系统使用
how
摘流:重启部署前,通知流量分发中心(或流量中心定时探活),流量中心切断新流量,服务开始部署
接流:服务部署完成,通知流量分发中心(或流量中心定时探活),流量中心将该服务接入
以上为最质朴的原理,具体实现的方式多种多样,我司的摘流、接流都是通过“服务提供探活脚本或接口负载均衡中心探活实现”。
遗留问题
摘流通过以上方式,新流量不会进来,但是正在处理的旧流量怎么办呢?目前了解到的是无解,尽量选择在低峰期发布(或者通知流量中心进行摘流后,延迟一段时间再部署,从而延长就流量被处理完的时间,不过这不是根本办法,因为你并不知道旧流量何时能处理完)
参考
https://www.cnblogs.com/mcgrady/p/12841315.html
https://blog.csdn.net/z50l2o08e2u4aftor9a/article/details/80002345