[发明专利]系统升级方法、升级系统、计算机设备和可读存储介质在审
申请号: | 202110546861.X | 申请日: | 2021-05-19 |
公开(公告)号: | CN115373705A | 公开(公告)日: | 2022-11-22 |
发明(设计)人: | 毛颖 | 申请(专利权)人: | 奇安信科技集团股份有限公司;网神信息技术(北京)股份有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65 |
代理公司: | 北京英特普罗知识产权代理有限公司 11015 | 代理人: | 程超;王焕灵 |
地址: | 100088 北京市西城区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 系统升级 方法 升级 系统 计算机 设备 可读 存储 介质 | ||
本发明提供了一种系统升级方法、升级系统、计算机设备和可读存储介质。获取状态文件配置,其中,所述状态文件配置包括对若干状态文件进行变更操作的配置,所述状态文件为所述系统运行所在环境中可被修改的系统内容;确定所述状态文件配置中的待执行变更操作;以及根据所述待执行变更操作的状态文件的类型调用升级插件,以使所述升级插件对所述状态文件进行变更。通过本发明,能够降低系统升级的复杂性和故障率。
技术领域
本发明涉及分布式系统技术领域,尤其涉及一种系统升级方法、升级系统、计算机设备和可读存储介质。
背景技术
面对大型复杂分布式系统,总是会面临各种各样的系统升级,随着分布式、集群、模块化等技术的广泛引用,系统运行和部署的架构越来越复杂,系统升级往往会涉及数据库、SQL脚本、配置、目录文件、程序文件等内容的升级,还需要兼顾现场运维对系统的修改,使得升级和回退逻辑越来越复杂,且经常需要定制升级脚本,严重影响成功率,造成升级回退成了必备的保障机制,而回退相比升级更加复杂,且本身存在可靠性和一致性问题。
在现有技术中,升级方法包括面向数据的升级方法和面向业务流程的升级方法。前者主要针对的是简单的文件替换和增量SQL执行框架,这些技术不能完全覆盖复杂场景下的系统升级,例如系统有过定制、运维修改过系统配置、部分业务涉及复杂的数据迁移、无法通过SQL升级等。对于复杂系统,通常采用后者,也即面向业务流程的升级方法进行升级,具体地,由升级程序负责升级主流程,如校验、基线升级以及模块升级等,通过插件来实现业务的各个升级子流程,对于不同的业务,定制不同的插件。这种方法中,升级插件与业务及环境高度耦合,导致升级系统的每个版本时,都需要定制插件,不仅升级复杂,开发维护成本高,还会因插件代码过多而容易出现升级故障。
因此,如何降低系统升级的复杂性和故障率,成为本领域亟需解决的技术问题。
发明内容
本发明的目的是提供一种系统升级方法、升级系统、计算机设备和可读存储介质,用于解决现有技术中的上述技术问题。
一方面,为实现上述目的,本发明提供了一种系统升级方法。
该系统升级方法包括:获取状态文件配置,其中,所述状态文件配置包括对若干状态文件进行变更操作的配置,所述状态文件为所述系统运行所在环境中可被修改的系统内容;确定所述状态文件配置中的待执行变更操作;以及根据所述待执行变更操作的状态文件的类型调用升级插件,以使所述升级插件对所述状态文件进行变更。
进一步地,所述状态文件包括实现数据库升级时被修改的内容、实现系统配置升级时被修改的内容和实现程序升级时被修改的内容。
进一步地,系统升级包括若干升级事务;在获取状态文件配置的步骤之前,所述系统升级方法还包括:解析所述升级事务的事务组件包,其中,所述事务组件包包括所述状态文件配置和事务流程配置,所述事务流程配置包括执行各所述变更操作的次序配置;确定所述待执行变更操作的步骤包括:根据所述事务流程配置确定所述待执行变更操作。
进一步地,所述升级插件还用于当所述变更操作执行异常时,生成异常信息,当所述变更操作执行成功时,记录升级日志;所述系统升级方法还包括:调用快照插件,对所述待执行变更操作的状态文件进行快照,并保存快照文件;在接收到所述异常信息时,遍历所述升级日志,确定所述异常信息所在升级事务中,已被执行变更操作的状态文件,并基于所述已被执行变更操作的状态文件对应的快照文件进行恢复。
进一步地,对所述待执行变更操作的状态文件进行快照的步骤包括:当所述状态文件为实现数据库升级时被修改的内容时,通过数据库的checkpoint机制进行快照;当所述状态文件为实现系统配置升级时被修改的内容或实现程序升级时被修改的内容,且所述状态文件小于预设阈值时,通过对状态文件进行备份来进行快照;当所述状态文件为实现系统配置升级时被修改的内容或实现程序升级时被修改的内容,且所述状态文件大于或等于预设阈值时,计算变更操作前后的状态文件的二进制差异进行快照。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于奇安信科技集团股份有限公司;网神信息技术(北京)股份有限公司,未经奇安信科技集团股份有限公司;网神信息技术(北京)股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110546861.X/2.html,转载请声明来源钻瓜专利网。