灰度测试

灰度测试的场景:生产系统部署了A版本,现在发布新版本B版本,希望生产环境只有部分流量或者特定流量访问B版本做生产验证,灰度系统验证通过后再大规模将老系统升级至新版本。

灰度测试主要用来替换双活环境(生产发布时布置两套环境,以便新环境有误则回退至老环境)。

 

灰度测试的原理:通过分发组件,将流量分为两部分,一部分走A版本系统,一部分走B版本系统。

因此分发组件通常为网关。

A版本系统为老系统。

B版本系统为灰度系统。(可以通过在配置文件中做灰度标记表示该系统是灰度系统,如在配置文件中增加:setGraySystem:true)

正常流量:没有标记的流量。

染色(灰度)流量:经过标识符标记的流量。(如:在请求头中增加grayRequest=true的标记来做表示,或者指定特定参数如:username=zhangsan用户名为张三的请求即为灰度请求)(常用的标记位置有requestHead,cookie,param)

(还可以配置百分比,例如10%的流量随机访问灰度系统)

   

灰度测试的名词:

染色(灰度)流量:有灰度标记的流量(请求)即为染色(灰度)流量。

非染色流量:没有灰度标记的流量(请求)。

灰度微服务:做了灰度标记的微服务节点。

泳道:分发组件到服务节点的链路(链路通道)(举例:网关到某微服务之间的通信)。

posted on 2024-07-22 22:36  丶柚子  阅读(231)  评论(0)    收藏  举报

导航