本技术涉及通信,特别是涉及一种主机应用版本维护方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术:
1、企业业务主要运行在大型主机上,其中业务功能的优化通过主机应用版本进行维护。应用版本维护期间可能会涉及程序源码的变化或数据库表结构的变化,程序源码变化主要是指访问数据表的sql语句变化,数据表结构变化主要是指字段的增加、删除、属性调整等。传统做法是在业务停用的情况下,完成数据库表结构的变更或程序编译生效。对于数据库表结构变化,如新增或删除字段,需要先将原数据库表中数据进行备份,然后删除、重建数据库表,再将备份的数据移行到新数据库表中。对于变更的程序,需要根据源码内容重新全量编译生成可执行程序,然后覆盖更新当前系统的程序内容。应用版本维护中涉及的数据库表变更或程序更新可能只涉及整体系统的一个子集,但是由于业务层面上很难进行范围控制,为了避免业务对应用版本变更的影响,传统方式是全部停用业务功能,变更耗时较长,且变更期间业务全局不可用,严重影响业务连续性水平。
2、目标的主机应用版本维护方式严重影响业务连续性,影响业务的处理效率。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够提高业务处理效率的主机应用版本维护方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
2、第一方面,本技术提供了一种主机应用版本维护方法,包括:
3、在目标主机的原系统开始应用版本维护的情况下,将原系统的业务负载切换至相应的镜像系统;
4、在原系统完成应用版本维护的情况下,停止镜像系统中的业务负载;
5、获取镜像系统与原系统之间的数据差异,根据数据差异对原系统进行数据更新;
6、在原系统与镜像系统之间的数据一致的情况下,将镜像系统的业务负载切换至原系统。
7、在其中一个实施例中,在目标主机的原系统开始应用版本维护的情况下,将原系统的业务负载切换至相应的镜像系统之前,还包括:
8、搭建与目标主机的原系统相应的镜像系统;
9、在原系统和镜像系统的数据库之间配置数据复制组件;数据复制组件用于根据原系统对镜像系统进行数据更新,以使得镜像系统与原系统之间的数据一致;
10、启动数据复制组件;
11、相应的,在目标主机的原系统开始应用版本维护的情况下,将原系统的业务负载切换至相应的镜像系统之后,还包括:
12、获取原系统中各负载的运行状态;
13、在原系统没有负载运行的情况下,停止数据复制组件。
14、在其中一个实施例中,在原系统与镜像系统之间的数据一致的情况下,将镜像系统的业务负载切换至原系统之后,还包括:
15、获取原系统的应用版本维护信息;
16、根据应用版本维护信息,对镜像系统进行数据更新,以使得镜像系统与应用版本维护后的原系统之间的数据一致;
17、启动数据复制组件。
18、在其中一个实施例中,获取镜像系统与原系统之间的数据差异,根据数据差异对原系统进行数据更新,包括:
19、在镜像系统中,确定与原系统的原数据表对应的镜像数据表;
20、获取原数据表与镜像数据表之间的表结构差异类型;
21、采用与表结构差异类型相匹配的数据更新策略,对原系统中的原数据表进行数据更新。
22、在其中一个实施例中,采用与表结构差异类型相匹配的数据更新策略,对原系统中的原数据表进行数据更新,包括:
23、在表结构差异类型为表结构无差异的情况下,根据原数据表,获取数据表复制清单;
24、根据镜像系统的数据库日志,获取更新日志;
25、根据更新日志和数据表复制清单,对原系统中的原数据表进行数据更新。
26、在其中一个实施例中,采用与表结构差异类型相匹配的数据更新策略,对原系统中的原数据表进行数据更新,还包括:
27、在表结构差异类型为表结构有差异的情况下,根据原数据表,获取结构变更清单;
28、对镜像系统的历史数据进行备份,得到备份数据;
29、根据备份数据和移行工具,对原系统中的原数据表进行数据更新。
30、第二方面,本技术还提供了一种主机应用版本维护装置,包括:
31、切换模块,用于在目标主机的原系统开始应用版本维护的情况下,将原系统的业务负载切换至相应的镜像系统;
32、停止模块,用于在原系统完成应用版本维护的情况下,停止镜像系统中的业务负载;
33、更新模块,用于获取镜像系统与原系统之间的数据差异,根据数据差异对原系统进行数据更新;
34、回切模块,用于在原系统与镜像系统之间的数据一致的情况下,将镜像系统的业务负载切换至原系统。
35、第三方面,本技术还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
36、在目标主机的原系统开始应用版本维护的情况下,将原系统的业务负载切换至相应的镜像系统;
37、在原系统完成应用版本维护的情况下,停止镜像系统中的业务负载;
38、获取镜像系统与原系统之间的数据差异,根据数据差异对原系统进行数据更新;
39、在原系统与镜像系统之间的数据一致的情况下,将镜像系统的业务负载切换至原系统。
40、第四方面,本技术还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
41、在目标主机的原系统开始应用版本维护的情况下,将原系统的业务负载切换至相应的镜像系统;
42、在原系统完成应用版本维护的情况下,停止镜像系统中的业务负载;
43、获取镜像系统与原系统之间的数据差异,根据数据差异对原系统进行数据更新;
44、在原系统与镜像系统之间的数据一致的情况下,将镜像系统的业务负载切换至原系统。
45、第五方面,本技术还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
46、在目标主机的原系统开始应用版本维护的情况下,将原系统的业务负载切换至相应的镜像系统;
47、在原系统完成应用版本维护的情况下,停止镜像系统中的业务负载;
48、获取镜像系统与原系统之间的数据差异,根据数据差异对原系统进行数据更新;
49、在原系统与镜像系统之间的数据一致的情况下,将镜像系统的业务负载切换至原系统。
50、上述主机应用版本维护方法、装置、计算机设备、存储介质和计算机程序产品,在目标主机的原系统开始应用版本维护的情况下,将原系统的业务负载切换至相应的镜像系统;在原系统完成应用版本维护的情况下,停止镜像系统中的业务负载;获取镜像系统与原系统之间的数据差异,根据数据差异对原系统进行数据更新;在原系统与镜像系统之间的数据一致的情况下,将镜像系统的业务负载切换至原系统。通过提供一种基于数据复制的镜像系统,在常态下维持数据一致性部署,在变更期间提供临时业务服务,在变更后完成数据同步,减小应用版本变更期间对业务的影响,能够提高业务处理效率。