[发明专利]智能更新程序逻辑的方法、装置、设备及存储介质有效

专利信息
申请号: 202110823645.5 申请日: 2021-07-21
公开(公告)号: CN113419766B 公开(公告)日: 2023-07-21
发明(设计)人: 林斌;施建安;庄一波;赵友平;孙志伟 申请(专利权)人: 厦门市易联众易惠科技有限公司
主分类号: G06F8/656 分类号: G06F8/656;G06F8/71
代理公司: 厦门智慧呈睿知识产权代理事务所(普通合伙) 35222 代理人: 陈晓思
地址: 361000 福建省厦*** 国省代码: 福建;35
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 智能 更新 程序逻辑 方法 装置 设备 存储 介质
【说明书】:

发明提供了一种智能更新程序逻辑的方法、装置、设备及存储介质,方法包括:检测当前是否存在版本更新;在检测到有新版本后,创建一个下载与校验任务,以实现新版本的源文件下载;在下载完成源文件后,根据自定义类加载器,优先从该源文件的Jar包中寻找相关依赖,以完成新接口实现对象的实例化;退出原有的供上层业务调用的旧接口,启用新接口供上层业务调用。本发明可以在业务逻辑无感知的情况下替换接口实现,从而实现不停机更新,提高了用户的使用体验。

技术领域

本发明涉及计算机技术领域,特别涉及一种智能更新程序逻辑的方法、装置、设备及存储介质。

背景技术

在程序运行的过程中,随着业务的变更,往往需要进行需求的更迭,反映在程序逻辑上,就是程序逻辑的变化。而运行中的程序,是将编码的逻辑固化打包后的可执行文件。如果需要升级新的功能,往往需要将程序的可执行文件进行升级。而对于Java领域的WEB应用,可执行文件往往是一个单体的Jar包。在这种情况下,需要对执行文件进行升级,就必须要停止对外提供的服务,将可执行文件替换,然后重新启动。这种升级方式,称之为停机升级。显然,在停机升级期间,原来对外提供的服务就被中断,服务中断可以表现为网站无响应,或者网站显示维护中,或者404错误页面等,这导致用户的体验感很差。

发明内容

有鉴于此,本发明的目的在于提供一种智能更新程序逻辑的方法、装置、设备及存储介质,以实现在不停机的前提下实现热更新。

本发明实施例提供了一种智能更新程序逻辑的方法,其包括:

检测当前是否存在版本更新;

在检测到有新版本后,创建一个下载与校验任务,以实现新版本的源文件下载;

在下载完成源文件后,根据自定义类加载器,优先从该源文件的Jar包中寻找相关依赖,以完成新接口实现对象的实例化;

退出原有的供上层业务调用的旧接口,启用新接口供上层业务调用。

优选地,检测当前是否存在版本更新具体包括:

以心跳的形式将自身注册为一个后台运行的线程,在客户端启动后,静默开启自身;

调用version方法,获取当前接口实现的版本数字;

使用当前接口实现的版本数字作为参数,查询远端接口实现版本库;

获得查询得到的远端接口实现的最新版本号;

在实例中查询是否存在与所述最新版本号对应的下载标识;

若存在,则判断下载任务已经启动,结束流程;

若不存在,则为所述最新版本号创建下载标识,启动下载任务。

优选地,所述启动下载任务包括:

创建下载元文件,在元文件中写入整个下载任务的相关的文件信息、大小信息、分段信息、分段进度、校验信息;

根据下载元文件,执行对应的下载任务;其中,下载任务以分段文件的形式下载;

在分段文件全部下载完成后,对每一个分段文件执行完整性校验;

在完整性校验通过后,将分段文件合并为源文件。

优选地,对于每个分段文件的下载以及完整性校验,包括:

根据元文件中对该分段文件设置的偏移量和长度信息,从服务端下载对应的字节内容;

将从网络上下载的内容写入到分段文件中;

将本次写入的进度更新到元文件;

判断是否完成对应长度的内容写入;

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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