前言
在前几篇文章,讲过网关灰度的实现方案,博主也实现相应的功能,借鉴了Discovery框架的相关原理。在实践中发现问题,向中间件提交issue,为开源做出小小贡献~
关注博主的话,其实之前也在Discovery中间件提过另一个issue 。
究竟什么问题
Q:当我们实现通过网关来灰度服务的时候,那么问题来了,网关如果在不稳定阶段,需要更新的话,网关如何做灰度?
背景描述:正常情况下,网关是很稳定的,基本就加个新服务的路由转发,这个可以通过动态配置来实现动态刷新。但是像那种非要改网关globalFilter,还有里面其他代码的时候,就需要重启网关,这时网关灰度的问题就暴露了~
so 我提了另一个issue:# 基于gateway灰度方案,如果网关需要更新新功能,怎么动态更新网关?
大佬的解答:通过nginx来做网关层的灰度~
解决方案
我这边是这样处理的:网关通过蓝绿来进行灰度,当然nginx也可以。然后服务通过网关进行灰度、AB Test.