我们的应用即使经过了测试部门的测试,也仍然很难全面覆盖用户的使用场景,为了保证万无一失,我们在进行发布的时候一般都会采用灰度发布,也就是会对新应用进行分批发布,逐步扩大新应用在整个及集群中的比例直到最后全部完成。灰度发布是说针对新应用在用户体验方面完全无感知。
灰度发布系统的作用在于,可以根据自己的配置,来将用 户的流量导到新上线的系统上,来快速验证新的功能, 而一旦出问题,也可以马上的回滚发布,简单的说,就是一套 A/BTest 系统.
实际项目中接入层下方可能是多个项目,也有可能是项目中做版本兼容逻辑(比如版本小于1调用方法A 版本大于等于1调用方法B)