[发明专利]一种能够动态配置的灰度发布方法在审
申请号: | 201911330036.5 | 申请日: | 2019-12-20 |
公开(公告)号: | CN111488159A | 公开(公告)日: | 2020-08-04 |
发明(设计)人: | 陈天辉;佘永涛;汪本义 | 申请(专利权)人: | 杭州当虹科技股份有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F8/71 |
代理公司: | 杭州橙知果专利代理事务所(特殊普通合伙) 33261 | 代理人: | 贺龙萍 |
地址: | 310012 浙江省杭州市西*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 能够 动态 配置 灰度 发布 方法 | ||
本发明公开了一种能够动态配置的灰度发布方法。它具体包括如下步骤:(1)nginx服务器启动时生成timetask定时任务,该任务从灰度管理系统获取最新灰度策略;(2)缓存最新灰度策略到Lua灰度引擎中;(3)用户通过客户端发起请求;(4)将用户的请求数据和lua灰度引擎中的最新灰度策略匹配;(5)如果没有匹配上,那么转发到原稳定版本服务器;(6)如果有匹配上,那么转发到灰度版本服务器。本发明的有益效果是:发布范围可控制,能够降低上线风险;很容易实现流量控制和切入;出现问题,可以马上回滚操作;指定目标用户,能够达到有针对性的产品功能校验,收集有效反馈;能够避免停止服务给用户带来的不便,提升高可用。
技术领域
本发明涉及互联网相关技术领域,尤其是指一种能够动态配置的灰度发布方法。
背景技术
在传统的系统升级和发布中,存在以下问题:在升级过程中,需要对线上停服,不但需要提前公告,而且会对用户使用产生一定的不便;涉及面广,影响大;用户使用习惯的改变,可能导致一定的用户流失;每次发布,特别是大版本发布,如临大敌;即便一部分使用了灰度发布,往往采用的是通用的参数或者值来实现,难以兼容不同的系统。
发明内容
本发明是为了克服现有技术中存在上述的不足,提供了一种发布范围可控的能够动态配置的灰度发布方法。
为了实现上述目的,本发明采用以下技术方案:
一种能够动态配置的灰度发布方法,包括nginx服务器、lua灰度引擎、灰度管理系统,nginx服务器为原对外开放的入口网关服务器,lua灰度引擎为灰度发布转发核心脚本代码,灰度管理系统为提供最新灰度策略接口以及提供策略处理的管理平台,具体包括如下步骤:
(1)nginx服务器启动时生成timetask定时任务,该任务从灰度管理系统获取最新灰度策略;
(2)缓存最新灰度策略到Lua灰度引擎中;
(3)用户通过客户端发起请求;
(4)将用户的请求数据和lua灰度引擎中的最新灰度策略匹配;
(5)如果没有匹配上,那么转发到原稳定版本服务器;
(6)如果有匹配上,那么转发到灰度版本服务器。
通过本发明的方式,能够根据IP、APP版本以及系统自定义筛选条件来对不同用户进行分流,发布范围可控制,能够降低上线风险;很容易实现流量控制和切入;出现问题,可以马上回滚操作;指定目标用户,能够达到有针对性的产品功能校验,收集有效反馈;能够避免停止服务给用户带来的不便,提升高可用;针对新接入的系统,几乎可以零侵入接入灰度发布。
作为优选,在灰度管理系统中,管理员修改更新灰度策略到最新灰度策略中,修改更新灰度策略包括停止、开启灰度、更新策略内容。
作为优选,在步骤(4)中,匹配的具体操作步骤如下:
(41)nginx服务器根据用户的请求指定到Lua灰度引擎对应的服务;
(42)Lua灰度引擎从缓存的最新灰度策略中获取该服务的灰度状态;
(43)判断灰度是否开启,如果开启则进入下一步,否则进入到步骤(5)中;
(44)从用户请求的请求头中获取灰度参数值,判断灰度参数是否有值,如果有则进入下一步,否则进入到步骤(5)中;
(45)从缓存的最新灰度策略中获取该服务的路由策略,判断是否包含白名单灰度策略,如果包含白名单灰度策略则判断是否符合白名单灰度策略,如果不包含白名单灰度策略则进入下一步,如果符合白名单灰度策略则进入到步骤(6)中,如果不符合白名单灰度策略则进入下一步;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州当虹科技股份有限公司,未经杭州当虹科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911330036.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种成像设备标定方法以及装置
- 下一篇:一种控制器插接头检测装置