[发明专利]一种前端灰度发布方法、系统及存储介质在审
申请号: | 202210149835.8 | 申请日: | 2022-02-18 |
公开(公告)号: | CN114615135A | 公开(公告)日: | 2022-06-10 |
发明(设计)人: | 刘帅;肖巧俊 | 申请(专利权)人: | 佐朋数科(深圳)信息技术有限责任公司 |
主分类号: | H04L41/0803 | 分类号: | H04L41/0803;H04L67/10;G06F8/60;G06F8/71 |
代理公司: | 深圳茂达智联知识产权代理事务所(普通合伙) 44394 | 代理人: | 骆晶 |
地址: | 518000 广东省深圳市南山区粤海街道滨海社区高新南十道87、*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 前端 灰度 发布 方法 系统 存储 介质 | ||
1.一种前端灰度发布方法,其特征在于,所述方法包括以下步骤:
步骤S10,当代码编码完成后,灰度版本devops打包并部署发布灰度代码到灰度目录,其中,灰度目录名采用正常目录名+灰度版本号的形式;
步骤S20,在接收到客户端请求时,根据请求资源类型,通过openresty nginx将所述客户端请求转交到lua灰度处理模块;
步骤S30,通过所述lua灰度处理模块从预先设定的灰度规则列表获取灰度规则,并执行,得到灰度资源路径;
步骤S40,通知nginx灰度资源路径,并继续执行响应。
2.根据权利要求1所述的前端灰度发布方法,其特征在于,所述步骤S10,当代码编码完成后,灰度版本devops打包并部署发布灰度代码到灰度目录的步骤之前包括:
预先拟定灰度的版本号;
所述步骤S10,当代码编码完成后,灰度版本devops打包并部署发布灰度代码到灰度目录的步骤包括:
当代码编码完成后,通过webpack构建系统自动在页面内静态资源path前追加灰度版本号,然后采用单独打包方式,利用发布系统自动打包并部署到灰度代码到灰度目录。
3.根据权利要求2所述的前端灰度发布方法,其特征在于,所述步骤S20,在接收到客户端请求时,根据请求资源类型,通过openresty nginx将所述客户端请求转交到lua灰度处理模块的步骤包括:
在接收到客户端请求时,区分请求资源类型;
根据请求资源类型确定处理方式,对html文件的请求,统一转发到lua灰度模块处理,同时设置兜底策略,当灰度模块儿不可用导致出错时或者未匹配灰度版本时,采用兜底策略响应正常版本;对静态资源部分需要cdn回源处理时,根据匹配静态资源url中是否有灰度版本标识来确定灰度资源路径。
4.根据权利要求3所述的前端灰度发布方法,其特征在于,所述步骤S30,通过所述lua灰度处理模块从预先设定的灰度规则列表获取灰度规则,并执行,得到灰度资源路径的步骤包括:
在lua灰度处理模块接收到转发的客户端请求后,提取出客户端请求携带的信息,并拉取预先设定的灰度规则列表,根据规则顺序执行,一旦匹配到其中任意一条规则,即根据该规则对应的灰度版本号确定灰度资源路径,并返回nginx继续执行。
5.根据权利要求4所述的前端灰度发布方法,其特征在于,所述客户端请求携带的信息至少包括用户的userAgent、IP、cookie、header、请求体信息中的一种或几种。
6.根据权利要求1所述的前端灰度发布方法,其特征在于,所述步骤S40,通知nginx灰度资源路径,并继续执行响应的步骤包括:
根据所述灰度资源路径,找到目标文件并响应。
7.根据权利要求1至6任意一项所述的前端灰度发布方法,其特征在于,所述步骤S30,通过所述lua灰度处理模块从预先设定的灰度规则列表获取灰度规则,并执行,得到灰度资源路径的步骤之前包括:
动态管理并设置灰度规则和灰度版本,建立灰度规则和灰度版本关联关系的灰度规则表。
8.根据权利要求7所述的前端灰度发布方法,其特征在于,所述动态管理并设置灰度规则和灰度版本,建立灰度规则和灰度版本关联关系的灰度规则表的步骤中,每条灰度规则支持录入自定义lua脚本,并且通过规则排序实现灰度匹配的优先级,针对每个版本号下的规则进行一键开关,每次操作在做持久化存储的同时,会将最终生效的规则列表同步写入缓存服务中。
9.一种前端灰度发布系统,其特征在于,所述系统包括存储器、处理器、以及存储在所述处理器上的前端灰度发布程序,所述前端灰度发布程序被所述处理器运行时执行如权利要求1至8任意一项所述的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有前端灰度发布程序,所述前端灰度发布程序被处理器运行时执行如权利要求1至8任意一项所述的方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于佐朋数科(深圳)信息技术有限责任公司,未经佐朋数科(深圳)信息技术有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210149835.8/1.html,转载请声明来源钻瓜专利网。