软件开发工具包SDK热升级方法、装置、设备及存储介质制造方法及图纸

技术编号:30407664 阅读:12 留言:0更新日期:2021-10-20 11:17
本发明专利技术实施例提供了一种软件开发工具包SDK热升级方法、装置、设备及存储介质,其中,该方法包括:在通过运行旧版本的SDK调用SDK功能的情况下,若检测到SDK存在新版本,通过SDK驱动包构建新类装载器;通过所述新类装载器加载新版本的SDK;停止通过旧版本的SDK调用SDK功能,并通过新版本的SDK调用SDK功能。本发明专利技术实施例提供的技术方案可以无需对项目进行重启即可完成SDK的升级,可以提高效率,并且节省网络宽带资源。络宽带资源。络宽带资源。

【技术实现步骤摘要】
软件开发工具包SDK热升级方法、装置、设备及存储介质


[0001]本专利技术实施例涉及计算机技术,尤其涉及一种软件开发工具包SDK热升级方法、装置、设备及存储介质。

技术介绍

[0002]目前,大部分项目(应用系统)可以不间断的对外提供服务,是最基本也是必须达成的要求。一方面为了服务的负载均衡,另一方面为了服务的高可用,基本都是项目微服务化,集群式的部署。
[0003]其中,项目可以通过调用SDK功能实现微服务,当项目需要升级的时候,由于项目微服务化,通过SDK升级实现微服务的升级,从而实现项目的逐步升级。相关技术中,在对SDK升级过程中,需要重启项目才能完成SDK的升级,效率较低。

技术实现思路

[0004]本专利技术实施例提供了一种软件开发工具包SDK热升级方法、装置、设备及存储介质,可以无需对项目进行重启即可完成SDK的升级,可以提高效率,并且节省网络宽带资源。
[0005]第一方面,本专利技术实施例提供了一种软件开发工具包SDK热升级方法,包括:
[0006]在通过运行旧版本的SDK调用SDK功能的情况下,若检测到SDK存在新版本,通过SDK驱动包构建新类装载器;
[0007]通过所述新类装载器加载新版本的SDK;
[0008]停止通过旧版本的SDK调用SDK功能,并通过新版本的SDK调用SDK功能。
[0009]可选的,所述若检测到SDK存在新版本,通过SDK驱动包构建新类装载器,包括:
[0010]根据轮询任务间隔预设时间间隔对预设地址进行轮询;
[0011]若在所述预设地址检测到新版本的SDK,通过所述SDK驱动包构建新类装载器。
[0012]可选的,所述通过SDK驱动包构建新类装载器,包括:
[0013]通过所述SDK驱动包构建具有解密功能的新类装载器,并设置所述新类装载器访问的预设地址;
[0014]相应的,通过所述新类装载器加载新版本的SDK,包括:
[0015]通过所述新类装载器从所述预设地址获取新版本的SDK,对所述新版本的SDK解密,并加载解密的新版本的SDK。
[0016]可选的,在所述通过新版本的SDK调用SDK功能之后,还包括:
[0017]通过所述SDK驱动包将旧版本的SDK进行卸载。
[0018]可选的,还包括:
[0019]当集成所述SDK驱动包的项目启动时,通过SDK驱动包根据设定地址查询到旧版本的SDK;
[0020]通过类装载器加载旧版本的SDK,并在所述项目启动完成后,通过旧版本的SDK包调用SDK功能。
[0021]可选的,所述SDK驱动包集成在所述项目中;SDK功能包括微服务功能。
[0022]可选的,所述项目包括各类应用系统。
[0023]第二方面,本专利技术实施例还提供了一种软件开发工具包SDK热升级装置,包括:
[0024]构建模块,用于在通过运行旧版本的软件开发工具包SDK调用SDK功能的情况下,若检测到SDK存在新版本,通过SDK驱动包构建新类装载器;
[0025]加载模块,用于通过所述新类装载器加载新版本的SDK;
[0026]切换模块,用于停止通过新版本的SDK调用SDK功能,并通过新版本的SDK调用SDK功能。
[0027]第三方面,本专利技术实施例还提供了一种电子设备,包括:
[0028]一个或多个处理器;
[0029]存储装置,用于存储一个或多个程序,
[0030]当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术实施例提供的方法。
[0031]第四方面,本专利技术实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本专利技术实施例提供的方法。
[0032]本专利技术实施例提供的技术方案,若检测到SDK存在新版本,通过SDK驱动包构建新类装载器;通过新类装载器加载新版本的SDK,停止旧版本的SDK调用SDK功能,并通过新版本的SDK调用SDK功能,可以无需对项目进行重启即可以实现SDK的升级,可以提高效率,并且通过本地调用SDK功能,可以不占用网络宽带,不存在网络IO。
附图说明
[0033]图1是本专利技术实施例提供的一种SDK热升级方法流程图;
[0034]图2a是本专利技术实施例提供的一种SDK热升级方法流程图;
[0035]图2b是本专利技术实施例提供的加载旧版本SDK示意图;
[0036]图2c是本专利技术实施例提供的SDK升级示意图;
[0037]图3是本专利技术实施例提供的一种SDK热升级方法流程图;
[0038]图4是本专利技术实施例提供的一种SDK热升级装置结构框图;
[0039]图5是本专利技术实施例提供的一种电子设备的结构示意图。
具体实施方式
[0040]下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。
[0041]图1是本专利技术实施例提供的一种SDK热升级方法流程图,所述方法可以由SDK热升级装置来执行,所述装置可以由软件和/或硬件来实现,所述装置可以配置在服务器中,所述方法可以应用于项目需要升级的场景中。
[0042]如图1所示,本专利技术实施例提供的技术方案包括:
[0043]S110:在通过运行旧版本的SDK调用SDK功能的情况下,若检测到SDK存在新版本,通过SDK驱动包构建新类装载器。
[0044]在本专利技术实施例中,软件开发工具包(Software Development Kit,SDK)一般可以用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合,可以简单地为某个编程语言提供应用程序接口的一些文件,但也可能包括能与某种嵌入式系统通讯的复杂的硬件。其中,通过运行SDK,可以调用SDK功能,其中,SDK功能可以是一些微服务功能,或者可以根据需要设置的功能,例如,可以是解密功能,或者可以是一些其他功能。
[0045]在本专利技术实施例中,可以在项目中预先集成SDK驱动包,当项目需要升级的时候,由于项目均是微服务化,可以通过对SDK升级,实现微服务的升级,从而实现项目的逐步升级。其中,项目可以包括各类应用系统。
[0046]在本专利技术实施例的一个实施方式中,在若检测到SDK存在新版本,通过SDK驱动包构建新类装载器之前,可以包括:当项目启动时,通过SDK驱动包从设定地址查询到SDK,构建对应的类装载器,并通过类装载器加载SDK,该SDK可以理解为旧版本的SDK;在项目启动完成后,通过加载的旧版本SDK调用SDK功能。若检测到存在新版本的SDK,可以通过集成在项目中的SDK驱动包构建新的类装载器。其中,类加载器(class loader)用来加载Java类到Java虚拟机中。驱动包的功能包括两个功能,一方面是自定义本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种软件开发工具包SDK热升级方法,其特征在于,包括:在通过运行旧版本的SDK调用SDK功能的情况下,若检测到SDK存在新版本,通过SDK驱动包构建新类装载器;通过所述新类装载器加载新版本的SDK;停止通过旧版本的SDK调用SDK功能,并通过新版本的SDK调用SDK功能。2.根据权利要求1所述的方法,其特征在于,所述若检测到SDK存在新版本,通过SDK驱动包构建新类装载器,包括:根据轮询任务间隔预设时间间隔对预设地址进行轮询;若在所述预设地址检测到新版本的SDK,通过所述SDK驱动包构建新类装载器。3.根据权利要求1或2所述的方法,其特征在于,所述通过SDK驱动包构建新类装载器,包括:通过所述SDK驱动包构建具有解密功能的新类装载器,并设置所述新类装载器访问的预设地址;相应的,通过所述新类装载器加载新版本的SDK,包括:通过所述新类装载器从所述预设地址获取新版本的SDK,对所述新版本的SDK解密,并加载解密的新版本的SDK。4.根据权利要求1所述的方法,其特征在于,在所述通过新版本的SDK调用SDK功能之后,还包括:通过所述SDK驱动包将旧版本的SDK进行卸载。5.根据权利要求1所述的方法,其特征在于,还包括:当集成所述SDK驱动...

【专利技术属性】
技术研发人员:钟丹晔袁海洋
申请(专利权)人:江苏保旺达软件技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1