灰度发布

灰度发布(又名金丝雀发布)是指在黑与白之间,能够平滑过渡的一种发布方式。在其上可以进行A/B testing,即让一部分用户继续用产品特性A,一部分用户开始用产品特性B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。

灰度期:灰度发布开始到结束期间的这一段时间,称为灰度期。

概述

灰度发布可以直接应用在网关上,通过网关控制调用不同的微服务集群,以最简单、最直观的方式实现。

实现原理:

  • 定义两个集群,旧的微服务新的微服务
  • 当用户请求接口时,通过自定义灰度发布实现,调用不同的微服务集群

自定义灰度发布实现

继承接口com.wueasy.gateway.service.GrayscaleReleaseService

/**
 * 自定义灰度发布接口实现
 * @author: fallsea
 * @version 1.0
 */
 @Service
 public class DemoGrayscaleReleaseService implements GrayscaleReleaseService {

     @Override
     public String getClientId(String funcNo, HttpServletRequest request) {
         //在这里进行控制,返回不同的微服务busid

         //获取session
         Session session = SysUtil.getSession();

         session.getUser();//获取用户信息

         return null;
     }

 }

通过以上自定义灰度发布实现后,会按照定义的规则来执行。

Copyright © wueasy.com 2017-2021 all right reserved,powered by Gitbook未经允许,禁止以任何形式传播 修订时间: 2019-11-18

results matching ""

    No results matching ""