[发明专利]一种在web应用中实现在线升级代码的方法在审

专利信息
申请号: 201510827619.4 申请日: 2015-11-25
公开(公告)号: CN105468464A 公开(公告)日: 2016-04-06
发明(设计)人: 钟健波;杨松;季统凯 申请(专利权)人: 国云科技股份有限公司
主分类号: G06F9/54 分类号: G06F9/54;H04L29/08;G06F9/445
代理公司: 广东莞信律师事务所 44332 代理人: 余伦
地址: 523808 广东省东*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 web 应用 实现 在线 升级 代码 方法
【说明书】:

技术领域

发明涉及应用升级更新,特别是一种在web应用中实现在线升级代码的 方法。

背景技术

Web应用通过发布接口来提供服务,在应用运行过程中,当发现服务存在 bug,需要修复,或者提供了更多的服务,就需要更新应用的代码,以便提供更 好的服务质量。但是传统的应用更新存在以下问题:

一是应用更新时,需要停止服务,放入更新代码后再重新启动,如果应用 本身是比较大型的服务,重启时间比较长,那么会导致用户在应用重启的这段 时间里无法使用服务。

二是如果通过负载均衡,部署两套服务,升级其中一套,另外一套继续服 务,对于小型的服务来说又是很耗费资源的;

为了使服务可以持续提供,不影响用户的使用,同时使用较少的资源,需 要一种通实现在线升级代码的方法。

发明内容

本发明解决的技术问题在于提供一种在web应用中实现在线升级代码的方 法,解决了使用较少资源完成应用的在线升级问题。

本发明解决上述技术问题的技术方案是:

包括如下步骤:

所述的方法包括如下步骤:

步骤1:创建统一的提供服务接口;

步骤2:创建web应用启动模块,加载所有jar包到内存;

步骤3:统一接口获取内存并实例化,处理后返回;

步骤4:放入更新jar包,启动更新模块;

步骤5:判断应用是否已在更新状态,是,执行步骤8;不在更新状态,执 行步骤6;

步骤6:更新模块获取jar包内容,放到内存中,完成更新;

步骤7:调用统一接口继续提供服务;

步骤8:结束。

所述的统一的服务接口带有computeActionType参数,标识调用功能,并把 所有入参以map形式保存;

所述的统一接口根据入参computeActionType,获取全局map中对应的实现 类,初始化实现类,并把请求入参map赋值到实现类中,执行实现类,把执行 结果返回给用户。

所述的启动模块,在web应用启动时执行,遍历应用特定路径下jar包,并 加载jar包中所有baseTask类的实现类,同时加入到全局静态Map中。

所述的判断应用是否更新中,更新模块带有全局变量,记录应用是否更新 中,用户调用更新接口后,更新模块启动,标识应用升级中,更新模块执行完 毕后标识应用不在升级状态,可以继续下次更新。

扫描特定路径下所有jar包,并获取所有baseTask类的实现类,加入到临时 map中,扫描完毕后,替换原有内存中的全局静态map。

本发明通过把应用服务的实现类加载到内存中,使用时再实例化。应用更 新时,扫描所有jar包,重新加载实现类的内存中进行替换,实现应用的在线升 级。在生产环境中,只需要提供足够一套足够应用运行的环境即可,应用升级 时,还能继续提供服务,能减少运营成本,同时也能提供稳定的服务。

附图说明

下面结合附图对本发明进一步说明:

图1为本发明方法流程图。

具体实施方式

如图1所示,本发明主要包括以下步骤:

创建统一的服务入口,处理用户的请求:

获取服务实现类代码如下

扫描jar包代码

把实现类加载到内存代码

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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