远程升级方法及系统技术方案

技术编号:23763594 阅读:15 留言:0更新日期:2020-04-11 18:41
本申请公开了远程升级方法及系统,其中所述方法包括:响应于进行程序升级,调用网关接口,至少将压缩程序包的网址、版本、完整性校验码和请求类型参数传递给网关;根据所述请求类型参数修改升级程序启动配置参数中的动作标识并通知守护进程重启升级程序;升级程序读取所述启动配置参数并根据所述动作标识修改程序版本。本发明专利技术使能实现简单便捷、安全稳定且兼容多种容器的程序升级。

Remote upgrade method and system

【技术实现步骤摘要】
远程升级方法及系统
本申请涉及电数字数据处理领域,尤其涉及远程升级方法及系统。
技术介绍
目前,医疗互联网系统的升级完全依赖于实施人员现场操作。操作疏忽、不按操作步骤实施等导致问题增多,增加时间成本。此外,现有医疗互联网系统更新慢,一个功能或者bug的更新,从发布到产品的完全更新完成,周期太长,成本高。再者,现有医疗互联网系统更新无法做到定制化,对运行环境、容器等会强依赖,而且无法恢复到之前用过的版本。因此,需要一种简单便捷、安全稳定、对容器松耦合的升级方法。
技术实现思路
为了克服现有技术中存在的不足,本专利技术要解决的技术问题是提供一种远程升级方法及系统,其使得程序升级简单便捷、安全稳定及对容器松耦合。为解决上述技术问题,根据本专利技术的第一方面,提供一种远程升级方法,该方法包括:响应于进行程序升级,调用网关接口,至少将压缩程序包的网址、版本、完整性校验码和请求类型参数传递给网关;根据所述请求类型参数修改升级程序启动配置参数中的动作标识并通知守护进程重启升级程序;升级程序读取所述启动配置参数并根据所述动作标识修改程序版本。作为本专利技术所述方法的改进,所述方法还包括:响应于所述动作标识为升级,根据版本号规则将压缩程序包解压缩到以版本号命名的文件中,并执行复制上一个版本配置命令,然后执行压缩程序包中的启动脚本。作为本专利技术所述方法的另一种改进,所述方法还包括:响应于启动失败,对启动失败次数进行计数并修改所述启动配置参数中的失败次数计数。作为本专利技术所述方法的又一种改进,所述方法还包括:响应于失败次数计数超过预设阈值,将所述启动配置参数中的动作标识修改为回退,并配置回退的程序版本。作为本专利技术所述方法的再一种改进,所述方法还包括:响应于所述动作标识为启动或回退,根据版本号,寻址到相应目录,执行压缩程序包中的启动脚本。作为本专利技术所述方法的另一种改进,所述方法还包括:在执行启动脚本之前新建临时文件作为执行标识。作为本专利技术所述方法的又一种改进,所述方法还包括:在执行启动脚本之后修改升级程序配置文件。为解决上述技术问题,根据本专利技术的第二方面,提供一种远程升级系统,该系统包括:传递模块,用于响应于进行程序升级,调用网关接口,至少将压缩程序包的网址、版本、完整性校验码和请求类型参数传递给网关;修改模块,用于根据所述请求类型参数修改升级程序启动配置参数中的动作标识并通知守护进程重启升级程序;升级模块,用于升级程序读取所述启动配置参数并根据所述动作标识修改程序版本。为解决上述技术问题,根据本专利技术的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本专利技术的远程升级方法的步骤。为解决上述技术问题,根据本专利技术的第四方面,提供一种计算机设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中所述处理器执行所述计算机程序时实现本专利技术的远程升级方法的步骤。通过根据传递的参数修改升级程序的启动参数配置,本专利技术支持升级程序的启动参数、环境配置的个性化,从而支持升级的应用广泛,对容器松耦合(兼容性高)。只需要在远端手工上传升级程序压缩包及版本就可以完成医院院内程序的变更,十分简单便捷。此外,本专利技术技术支持版本的多次失败自动重试回退,保证应用的最大存活,提高安全稳定性。结合附图阅读本专利技术实施方式的详细描述后,本专利技术的其它特点和优点将变得更加清楚。附图说明图1为根据本专利技术方法的一实施例的流程图;图2为根据本专利技术系统的一实施例的框图。为清晰起见,这些附图均为示意性及简化的图,它们只给出了对于理解本专利技术所必要的细节,而省略其他细节。具体实施方式下面参照附图对本专利技术的实施方式和实施例进行详细说明。通过下面给出的详细描述,本专利技术的适用范围将显而易见。然而,应当理解,在详细描述和具体例子表明本专利技术优选实施例的同时,它们仅为说明目的给出。图1示出了根据本专利技术的远程升级方法的一优选实施例的流程图。在步骤S102,在例如医疗互联网系统的需要升级的压缩程序包(应用、安装或升级脚本)准备好之后,调用网关接口,将压缩程序包的网址、版本、完整性校验码、请求类型参数等传递给网关。请求类型参数可以是升级程序版本、启动当前版本或回退到先前版本。在步骤S104,根据传递给网关的请求类型参数修改升级程序启动配置参数中的动作标识并通知守护进程(看门狗)重启升级程序。动作标识可以是升级、启动或回退。在步骤S106,升级程序读取启动配置参数,根据动作标识确定动作类型。如果动作标识为升级,则处理进行到步骤S108。如果动作标识为启动或回退,则处理进行到步骤S150。在步骤S108,下载压缩程序包。在步骤S110,根据版本号规则将压缩程序包解压缩到以版本号命名的文件中,并执行复制上一个版本配置命令,然后执行压缩程序包中的启动脚本。在实施例中,在执行启动脚本之前还可新建临时文件作为执行标识。如果有一个升级请求,程序正在执行中,如下载或解压会比较耗时,在执行以上过程中,又来一个升级或回退请求,此时,通过文件标识来返回第二个无效请求。相应地,在执行启动脚本之后删除该临时文件标识。在步骤S112,在执行启动脚本之后修改升级程序配置文件,升级程序配置文件可以是一个json文本,其内容包括当前版本、上一个版本、请求状态(升级、回退、启动)、失败次数等。这个配置文件在升级、回退成功时更新。在步骤S150,根据版本号,寻址到相应目录,执行压缩程序包中的启动脚本。同样,在执行启动脚本之前也可新建临时文件作为执行标识。然后处理进行到步骤S112。在实施例中,传递给网关的参数还可包括启动失败重试次数阈值。在该情形下,如果因端口占用等而启动失败,对启动失败次数进行计数并修改启动配置参数中的失败次数计数。当失败次数计数超过预设阈值时,将启动配置参数中的标识修改为回退,并配置回退的程序版本(通常为最近的一个历史版本),然后执行步骤S150,确保应用的最大存活。图2示出了根据本专利技术的远程升级系统的一优选实施例的框图,该系统包括:传递模块202,用于响应于进行程序升级,调用网关接口,至少将压缩程序包的网址、版本、完整性校验码和请求类型参数传递给网关;修改模块204,用于根据所述请求类型参数修改升级程序启动配置参数中的动作标识并通知守护进程重启升级程序;升级模块206,用于升级程序读取所述启动配置参数并根据所述动作标识修改程序版本。在此所述的多个不同实施方式或者其特定特征、结构或特性可在本专利技术的一个或多个实施方式中适当组合。另外,在某些情形下,只要适当,流程图中和/或流水处理描述的步骤顺序可修改,并不必须精确按照所描述的顺序执行。另外,本专利技术的多个不同方面可使用软件、硬件、固件或者其组合和/或执行所述功能的其它计算机实施的模块或装置进行实施。本专利技术的软件实施可包括保存在计算机可读介质中并由一个本文档来自技高网...

【技术保护点】
1.一种远程升级方法,其特征在于,所述方法包括:/n响应于进行程序升级,调用网关接口,至少将压缩程序包的网址、版本、完整性校验码和请求类型参数传递给网关;/n根据所述请求类型参数修改升级程序启动配置参数中的动作标识并通知守护进程重启升级程序;/n升级程序读取所述启动配置参数并根据所述动作标识修改程序版本。/n

【技术特征摘要】
1.一种远程升级方法,其特征在于,所述方法包括:
响应于进行程序升级,调用网关接口,至少将压缩程序包的网址、版本、完整性校验码和请求类型参数传递给网关;
根据所述请求类型参数修改升级程序启动配置参数中的动作标识并通知守护进程重启升级程序;
升级程序读取所述启动配置参数并根据所述动作标识修改程序版本。


2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述动作标识为升级,根据版本号规则将压缩程序包解压缩到以版本号命名的文件中,并执行复制上一个版本配置命令,然后执行压缩程序包中的启动脚本。


3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
响应于启动失败,对启动失败次数进行计数并修改所述启动配置参数中的失败次数计数。


4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
响应于失败次数计数超过预设阈值,将所述启动配置参数中的动作标识修改为回退,并配置回退的程序版本。


5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述动作标识为启动或回退,根据版本号,寻址到相应目录,执行压缩程序...

【专利技术属性】
技术研发人员:张小福王雨功邵河山刘松青黄俊杰赵建强
申请(专利权)人:望海康信北京科技股份公司
类型:发明
国别省市:北京;11

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

1