一种应用程序的升级方法,包括如下步骤:对应用程序所在的操作系统进行克隆得到与所述操作系统相对应的虚拟环境;在所述虚拟环境中升级所述应用程序;将所述应用程序的访问环境由所述操作系统切换为升级后的虚拟环境。上述应用程序的升级方法及装置对应用程序所在的操作系统进行克隆,在不破坏操作系统环境的前提下通过与操作系统完全一样的虚拟环境实现应用程序的升级,进而将应用程序的访问环境由操作系统切换为升级后的虚拟环境,在升级的过程中操作系统并未发生任何变化,保留了升级之前的环境,即使升级过程中发生了错误也能够回到升级之前操作系统的环境,提高了稳定性。
【技术实现步骤摘要】
应用程序的升级方法及装置
本专利技术涉及计算机处理技术,特别是涉及一种应用程序的升级方法及装置。
技术介绍
应用程序常常为了满足各种各样需求进行升级,传统的升级方式大致包括了直接在本机中升级以及通过另一服务器进行升级后替换原有的服务器。对于直接在本机中升级的应用程序升级方式,在手动或者自动发起升级请求后将升级程序下载并安装于本机中;若通过另一服务器进行升级后替换原有环境则需要在该服务器上部署应用程序的升级版本,升级后的应用程序正常运行后,将这一服务器替换原有的服务器,实现应用程序的升级。然而,直接在本机中升级的方式若升级失败本机将无法回到升级前的状态,而通过另一服务器进行升级后替换原有的服务器的方式由于难以保证该服务器与原服务器中环境的一致性,应用程序升级出错的情况也时有发生。因此,无论是通过直接在本机中升级还是通过另一服务器进行升级后替换原有的服务器来实现应用程序的升级,都存在着缺乏稳定性的缺陷。
技术实现思路
基于此,有必要提供一种能提高稳定性的应用程序的升级方法。此外,还有必要提供一种能提高稳定性的应用程序的升级装置。一种应用程序的升级方法,包括如下步骤对应用程序所在的操作系统进行克隆得到与所述操作系统相对应的虚拟环境; 在所述虚拟环境中升级所述应用程序;将所述应用程序的访问环境由所述操作系统切换为升级后的虚拟环境。优选地,所述在所述虚拟环境中升级所述应用程序的过程为在所述虚拟环境中下载所述应用程序的升级数据;安装所述下载得到的升级数据。优选地,所述在所述虚拟环境中下载所述应用程序的升级数据的步骤之前还包括隔离所述克隆得到的虚拟环境。优选地,所述将所述应用程序的访问环境由所述操作系统切换为升级后的虚拟环境的步骤之后还包括测试所述升级后的虚拟环境是否正常,若否,则将所述应用程序的访问环境由所述升级后的虚拟环境切换为所述操作系统。一种应用程序的升级装置,包括克隆模块,用于对应用程序所在的操作系统进行克隆得到与所述操作系统相对应的虚拟环境;升级模块,用于在所述虚拟环境中升级所述应用程序;切换模块,用于将所述应用程序的访问环境由所述操作系统切换为升级后的虚拟环境。优选地,所述升级模块包括下载单元,用于在所述虚拟环境中下载所述应用程序的升级数据;安装单元,用于安装所述下载得到的升级数据。优选地,所述升级模块还包括隔离单元,用于隔离所述克隆得到的虚拟环境。优选地,还包括测试模块,用于测试所述升级后的虚拟环境是否正常,若否,则通知所述切换模块;所述切换模块还用于将所述应用程序的访问环境由所述升级后的虚拟环境切换为所述操作系统。上述应用程序的升级方法及装置对应用程序所在的操作系统进行克隆,在不破坏所述操作系统环境的·前提下通过与所述操作系统完全一样的虚拟环境实现应用程序的升级,进而将应用程序的访问环境由所述操作系统切换为升级后的虚拟环境,在升级的过程中所述操作系统并未发生任何变化,保留了升级之前的环境,即使升级过程中发生了错误也能够回到升级之前操作系统的环境,提高了稳定性。附图说明图1为一个实施例中应用程序的升级方法的流程图2为图1中在虚拟环境中升级应用程序的方法流程图3为另一个实施例中应用程序的升级方法的流程图4为一个实施例中应用程序的升级装置的结构示意图5为一个实施例中升级模块的结构示意图6为另一个实施例中升级模块的结构示意图。具体实施方式图1示出了一个实施例中应用程序的升级方法,包括如下步骤步骤S110,对应用程序所在的操作系统进行克隆得到与所述操作系统相对应的虚拟环境。本实施例中,应用程序安装于操作系统中,该操作系统可以设置于物理服务器或者虚拟机中,用户通过与操作系统建立连接访问该应用程序。在接收到自动升级指令或者管理员发起的升级指令时,以应用程序所在的操作系统为目标进行克隆,产生与操作系统一模一样的虚拟环境。例如,在VMware vsphere这一虚拟化平台中,通过Web Service API这一接口连接虚拟化平台中的虚拟机管理程序(VMM Virtual Machine Manager,VMM),通过虚拟机管理程序调用克隆方法(如VirtualMachine. CloneVM_Task),以启动操作系统的克隆,而克隆的参数通过VirtualMachineCloneSpec来指定;在完成操作系统的克隆后,产生对应的虚拟环境,并将向虚拟机管理程序返回克隆成功的消息,此时,虚拟化平台中的升级管理程序与虚拟环境中的升级管理程序建立连接并 通讯,虚拟环境中的升级管理程序接管应用程序的升级。步骤S130,在虚拟环境中升级应用程序。本实施例中,虚拟环境中的升级管理程序接管应用程序的升级之后,通过虚拟环 境进行应用程序的升级。在一个实施例中,如图2所示,上述步骤S130的具体过程为步骤S131,在虚拟环境中下载应用程序的升级数据。本实施例中,通过虚拟环境进行升级数据的下载,而操作系统将不进行应用程序 的升级数据下载,以使得操作系统中的环境并不会因为应用程序的升级而发生改变,防止 升级过程中发生错误时能够回滚到升级之前的环境。步骤S133,安装下载得到的升级数据。本实施例中,下载完成后,在虚拟环境中安装下载得到的升级数据,以实现虚拟环 境中应用程序的升级。在另一个实施例中,上述步骤S131之前还包括了隔离克隆得到的虚拟环境的步骤。本实施例中,在下载升级数据之前,禁止外界对虚拟环境进行访问,隔离克隆得 到的虚拟环境,以保证不会受到外界的干扰。具体地,对虚拟环境的隔离可通过网络设置 实现,例如,将虚拟环境设置于网络中某一个独立的隔离的虚拟局域网中(Virtual Local Area Network,简称 VLAN)。步骤S150,将应用程序的访问环境由操作系统切换升级后的虚拟环境。本实施例中,在通过虚拟环境所实现的应用程序升级完成之后,向虚拟环境中的 升级管理程序发出环境切换指令,并调用接口将访问环境由操作系统切换为升级后的虚拟 环境。环境切换指令包括了更改访问地址及相关设置的命令,例如,访问地址可以是对应的 TCP/IP协议地址,即IP地址。访问环境的切换过程是将用户原本访问的操作系统切换为虚拟环境,此时,用户 不再访问操作系统,而是对虚拟环境进行访问,进而实现对升级后的应用程序的访问。例 如,若操作系统的访问地址为192. 168.1. 100/24,虚拟环境隔离于另一个虚拟局域网中,对 应的访问地址为192. 168. 2. 100/24,此时访问环境的切换通过对调操作系统和虚拟环境中 的访问地址即可实现。通过切换访问环境使得用户访问的应用程序是升级后的应用程序,且切换访问环 境所花费的时间极短,几乎不会产生停机时间,即使处于正在升级的状态也不会影响用户 对应用程序的正常访问。在另一个实施例中,如图3所示,应用程序的升级方法的步骤S150之后还包括了 如下步骤步骤S301,测试升级后的虚拟环境是否正常,若否,则进入步骤S303,若是,则结束。本实施例中,虚拟环境中完成应用程序的升级之后,还需要对升级后的虚拟环境 进行测试,判断升级后的虚拟环境是否处于正常状态,若否,则需要回滚到升级之前的状 态,即进入步骤S303,若通过检测得知升级后的虚拟环境是正常的,虚拟环境中的应用程序在升级之后是可用的,将结束整个应本文档来自技高网...
【技术保护点】
一种应用程序的升级方法,包括如下步骤:对应用程序所在的操作系统进行克隆得到与所述操作系统相对应的虚拟环境;在所述虚拟环境中升级所述应用程序;将所述应用程序的访问环境由所述操作系统切换为升级后的虚拟环境。
【技术特征摘要】
1.一种应用程序的升级方法,包括如下步骤 对应用程序所在的操作系统进行克隆得到与所述操作系统相对应的虚拟环境; 在所述虚拟环境中升级所述应用程序; 将所述应用程序的访问环境由所述操作系统切换为升级后的虚拟环境。2.根据权利要求1所述的应用程序的升级方法,其特征在于,所述在所述虚拟环境中升级所述应用程序的过程为 在所述虚拟环境中下载所述应用程序的升级数据; 安装所述下载得到的升级数据。3.根据权利要求2所述的应用程序的升级方法,其特征在于,所述在所述虚拟环境中下载所述应用程序的升级数据的步骤之前还包括 隔离所述克隆得到的虚拟环境。4.根据权利要求1所述的应用程序的升级方法,其特征在于,所述将所述应用程序的访问环境由所述操作系统切换为升级后的虚拟环境的步骤之后还包括 测试所述升级后的虚拟环境是否正常,若否,则 将所述应用程序的访问环境由所述升级后的虚拟环境切换为所述操...
【专利技术属性】
技术研发人员:何子健,罗慧,
申请(专利权)人:金蝶软件中国有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。