[发明专利]一种基于React Native的灰度热部署系统有效

专利信息
申请号: 202110119988.3 申请日: 2021-01-28
公开(公告)号: CN112817624B 公开(公告)日: 2022-10-04
发明(设计)人: 赵存;高宇健;欧平均 申请(专利权)人: 杭州衣科信息技术股份有限公司
主分类号: G06F8/65 分类号: G06F8/65;G06F8/658;G06F8/71;G06F16/242;G06F16/2455;G06F16/28
代理公司: 杭州天昊专利代理事务所(特殊普通合伙) 33283 代理人: 程皓
地址: 311100 浙江省杭州市临*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 react native 灰度 部署 系统
【权利要求书】:

1.一种基于React Native的灰度热部署系统,其特征在于:包括gitlab runner模块、web端模块、服务端模块和客户端模块;

gitlab runner模块用于执行打包任务,通过开源代码托管平台,部署基于该平台的运行服务,该运行服务通过相应执行任务文件进行运作,任务文件实现执行的任务,其包括依赖下载、打包;任务文件通过开源代码托管平台相应的对外接口进行触发;

web端模块用于灰度发布,触发gitlab runner模块的打包功能,打包结束后会将包上传到服务器,完成一次打包任务;服务器收到打包文件后,会将这次发布的版本及灰度方式存储到数据库中,完成一次应用发布;

服务端模块用于存储、下发打包的执行任务文件;服务端模块包括数据库表packages和packages_diff,其中packages表记录每次版本的发布,信息包括包下载链接、版本号、灰度方式、是否存在diff包、是否可下载;packages_diff表记录每次发布的diff后的文件信息;当服务端收到gitlab runner模块上传的包后,检查packages表是否已存在同版本的包,如果不存在,记录该次发布的相应信息到表packages;如果存在,则利用文本差异方法生成差异化后的内容,将差异后的内容保存到旧包进行替换,同时记录到packages_diff表,完成一次差异化过程;

当客户端模块的请求到达时,服务端模块根据请求携带的版本号检查packages表,如果不存在对应的版本号,则返回无更新包;如果存在对应的版本号,检查是否满足灰度条件,不满足灰度条件时返回无更新包,满足灰度条件时,检查是否存在差异包,不存在,下发完整的包下载链接,存在,从表packages_diff中获取下载链接返回;

当从web端模块暂停某次灰度发布时,服务端模块会将packages表对应的那条发布记录是否可下载字段标记为否,此时当客户端模块请求触达时返回无更新包;

客户端模块,每次客户端模块启动时,请求接口检查更新,服务器模块根据接口参数,返回相关结果,客户端模块拿到返回结果后;如果无更新包,则结束流程;如果有更新包,下载该包;下载完成后,判断是否为差异包,如果不是差异包,保存该包到本地,同时将该包标记为current_package,将正在运行的包标记为previous_package;如果是差异包,则利用文本差异方法合并差异包内容到现有包,并保存到本地,同时将保存的包标记为current_package,将正在运行的包标记为previous_package;

下次启动获取标记为current_package的包运行,如果首次运行current_package包崩溃,则删除current_package标记的包,同时将标记为previous_package的包更改为current_package,供下次启动运行;

其中,文本差异方法采用处理步骤少,且处理上删除后新增,比新增后删除多;其中,通过图的最短路径搜索问题来进行最优选择;具体的,把文件头部相同的最长子串剔除;对于尾部,以较短的字符串为依据求最长子串,后剔除最长子串,文件剩下的部分再做diff包处理。

2.根据权利要求1所述的一种基于React Native的灰度热部署系统,其特征在于:当客户端模块的请求包括版本号、系统版本、网络条件、地区信息。

3.根据权利要求1所述的一种基于React Native的灰度热部署系统,其特征在于:灰度条件的方式为android 系统版本大于8,当请求携带的信息android 系统版本为7时则不满足灰度条件,android 系统版本为9时则满足灰度条件。

4.根据权利要求1所述的一种基于React Native的灰度热部署系统,其特征在于:差异包为下载的包信息里面携带了是否为差异包信息。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州衣科信息技术股份有限公司,未经杭州衣科信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202110119988.3/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top