[发明专利]灰度发布方法、装置、设备及可读存储介质有效
申请号: | 202010851185.2 | 申请日: | 2020-08-21 |
公开(公告)号: | CN112087325B | 公开(公告)日: | 2021-07-20 |
发明(设计)人: | 毕千筠 | 申请(专利权)人: | 烽火通信科技股份有限公司 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;H04L29/08;H04L29/06 |
代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 董婕 |
地址: | 430000 湖北省武*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 灰度 发布 方法 装置 设备 可读 存储 介质 | ||
本发明提供一种灰度发布方法、装置、设备及可读存储介质。该方法包括:在灰度微服务的服务描述YAML文件中添加灰度标签以及允许调用比例,所述灰度微服务包括基于底座模式实现的灰度微服务以及基于边车模式实现的灰度微服务;以所述灰度标签以及允许调用比例作为注册信息,完成灰度微服务的注册,并将灰度微服务设置为不可调用状态;设置已注册的灰度微服务的调用控制策略,将灰度微服务设置为可调用状态,将灰度微服务上线发布。通过本发明,实现了对基于底座模式实现的灰度微服务以及基于边车模式实现的灰度微服务进行统一的灰度发布和策略控制。
技术领域
本发明涉及通信技术领域,尤其涉及一种灰度发布方法、装置、设备及可读存储介质。
背景技术
对于一个微服务应用系统而言,灰度发布是一项非常重要的功能特性,是实现业务敏捷交付的重要一环。
传统应用微服务化一般有两种模式:底座模式和非底座模式(即边车模式)。前者以Lib库的方式为应用提供微服务相关特性的支持,后者通过独立运行的边车进程、以代理的方式为应用提供微服务特性,两种模式各有优缺,在这里不作赘述。
而在实际应用中,为了同时兼顾新旧系统的微服务化,往往会出现一种混合微服务框架的应用场景,比如:以底座模式实现Java类新应用的微服务化,而以边车模式实现C++类老应用的微服务化。那么对于这一混合场景,如何进行统一的灰度发布控制是个技术难题。
发明内容
本发明的主要目的在于提供一种灰度发布方法、装置、设备及可读存储介质,旨在解决现有技术中存在的上述技术问题。
第一方面,本发明提供一种灰度发布方法,所述灰度发布方法包括:
在灰度微服务的服务描述YAML文件中添加灰度标签以及允许调用比例,所述灰度微服务包括基于底座模式实现的灰度微服务以及基于边车模式实现的灰度微服务;
以所述灰度标签以及允许调用比例作为注册信息,完成灰度微服务的注册,并将灰度微服务设置为不可调用状态;
设置已注册的灰度微服务的调用控制策略,将灰度微服务设置为可调用状态,将灰度微服务上线发布。
可选的,在所述将灰度微服务上线发布的步骤之后,还包括:
当收到API调用请求时,从所述API调用请求中获取请求方信息;
当所述调用控制策略对应的信息列表中包括所述请求方信息时,将灰度标签注入API调用请求的请求上下文中。
可选的,在所述将灰度标签注入API调用请求的请求上下文中的步骤之后,还包括:
当所述API调用请求对应的调用链上的节点上存在已上线发布的灰度微服务,且所述灰度微服务的调用比例小于其对应的允许调用比例时,对所述灰度微服务进行调用。
可选的,在所述将灰度微服务上线发布的步骤之后,还包括:
修改灰度微服务对应的允许调用比例;
将修改后的灰度微服务对应的允许调用比例广播至所有在线的微服务。
可选的,在所述将灰度微服务上线发布的步骤之后,还包括:
当灰度微服务试运行通过后,在注册信息中,删除灰度标签,将负载策略更改为目标负载策略,得到灰度微服务的新的注册信息;
将灰度微服务的新的注册信息广播至所有在线的微服务。
第二方面,本发明还提供一种灰度发布装置,所述灰度发布装置包括:
定义模块,用于在灰度微服务的服务描述YAML文件中添加灰度标签以及允许调用比例,所述灰度微服务包括基于底座模式实现的灰度微服务以及基于边车模式实现的灰度微服务;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于烽火通信科技股份有限公司,未经烽火通信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010851185.2/2.html,转载请声明来源钻瓜专利网。