专利名称:系统的升级方法和装置
专利类型:实用新型专利
专利申请号:CN202110486601.8
专利申请(专利权)人:北京明朝万达科技股份有限公司
权利人地址:北京市海淀区阜外亮甲店1号恩济西园产业园16号楼B座
专利发明(设计)人:罗志成,喻波,王志海,韩振国,安鹏
专利摘要:本申请公开了一种系统的升级方法和装置,属于数据安全领域。所述方法包括:提供web页面的访问链接,并在确定客户端通过访问链接访问web页面的情况下,建立与客户端之间的通信链路;基于通信链路获取系统升级包;根据系统升级包中的升级配置信息,得到系统中包含的子系统对应的子系统升级包;将子系统升级包发送至对应的子系统,以供子系统根据进行升级。本申请中,运维人员在升级包含多个子系统的系统时,可以直接将系统升级包通过与系统升级服务器建立通信链路的客户端上的web页面进行上传,无需确定各个子系统对应的子系统服务器,并将系统升级包依次发送给各个子系统对应的子系统服务器,使得系统升级的步骤简洁,提高了系统的升级效率。
主权利要求:
1.一种系统的升级方法,其特征在于,应用于系统升级服务器,所述方法包括:提供web页面的访问链接,并在确定客户端通过所述访问链接访问所述web页面的情况下,建立与所述客户端之间的通信链路;
基于所述通信链路,获取所述客户端通过所述web页面上传的系统升级包;
响应于通过所述web页面接收到的一键升级指令,根据所述系统升级包中的升级配置信息,将所述系统升级包进行切分,得到系统中包含的子系统对应的子系统升级包;
将所述子系统升级包发送至对应的子系统,以供所述子系统根据所述子系统升级包进行升级,完成所述系统的升级;
所述系统升级包包括升级版本信息、升级文件信息和升级配置信息,所述根据所述系统升级包中的升级配置信息,将所述系统升级包进行切分,得到系统中包含的子系统对应的子系统升级包的步骤,包括:解析所述系统升级包,获取所述系统升级包中的升级版本信息、升级文件信息和升级配置信息;
在所述升级文件信息和所述升级配置信息与所述升级版本信息相互匹配的情况下,根据所述升级配置信息,将所述升级文件信息进行切分,确定所述升级文件信息中与所述子系统对应的子系统升级文件信息,得到包含所述升级版本信息、所述子系统升级文件信息和所述升级配置信息的子系统升级包;
在所述得到系统中包含的子系统对应的子系统升级包的步骤之后,所述方法还包括:生成所述子系统的升级任务信息,所述升级任务信息包含子系统升级状态,以及所述子系统升级状态对应的时间信息,所述子系统升级状态包括:正在升级状态、升级超时状态、待升级状态、升级失败状态和升级成功状态中的至少一种;
在所述子系统升级状态为所述正在升级状态的情况下,根据所述子系统升级状态和所述子系统升级状态对应的时间信息,确定所述子系统处于所述正在升级状态的升级时长;
在所述升级时长大于预设时长的情况下,生成针对所述子系统的预警信息,并将所述子系统升级状态修改为所述升级超时状态;
在所述生成所述子系统的升级任务信息的步骤之前,所述方法包括:生成升级停止指令,所述升级停止指令用于控制除所述子系统之外的其他子系统停止升级;
在所述升级时长大于预设时长的情况下,生成针对所述子系统的预警信息的步骤之后,所述方法还包括:删除所述升级停止指令。
2.根据权利要求1所述的方法,其特征在于,在所述将所述子系统升级包发送至对应的子系统的步骤之后,所述方法还包括:接收所述子系统发送的所述子系统的升级结果,所述升级结果包括升级成功或升级失败;
根据所述升级结果更新所述子系统升级状态;
在全部所述子系统中检测所述子系统升级状态为所述待升级状态的待升级子系统,将所述待升级子系统对应的子系统升级包发送至所述待升级子系统,以供所述待升级子系统进行升级。
3.根据权利要求1所述的方法,其特征在于,所述系统升级服务器包括升级状态显示界面;
所述升级状态显示界面用于显示所述子系统升级状态、所述子系统升级状态对应的时间信息和所述预警信息。
4.根据权利要求1所述的方法,其特征在于,所述解析所述系统升级包,获取所述系统升级包中的升级版本信息、升级文件信息和升级配置信息的步骤,包括:根据所述系统升级包,计算所述系统升级包对应的消息摘要算法标识;
获取所述系统升级包对应的原始消息摘要算法标识,对比所述系统升级包对应的消息摘要算法标识和所述原始消息摘要算法标识,确定所述系统升级包是否发生丢包或错包;
在所述系统升级包未发生丢包和错包的情况下,解析所述系统升级包,获取所述系统升级包中的升级版本信息、升级文件信息和升级配置信息。
5.一种系统的升级装置,其特征在于,应用于系统升级服务器,所述装置包括:建立模块,用于提供web页面的访问链接,并在确定客户端通过所述访问链接访问所述web页面的情况下,建立与所述客户端之间的通信链路;
获取模块,用于基于所述通信链路,获取所述客户端通过所述web页面上传的系统升级包;
切分模块,用于响应于通过所述web页面接收到的一键升级指令,根据所述系统升级包中的升级配置信息,将所述系统升级包进行切分,得到系统中包含的子系统对应的子系统升级包;
第一发送模块,用于将所述子系统升级包发送至对应的子系统,以供所述子系统根据所述子系统升级包进行升级,完成所述系统的升级;
所述系统升级包包括升级版本信息、升级文件信息和升级配置信息,所述切分模块,包括:解析子模块,用于解析所述系统升级包,获取所述系统升级包中的升级版本信息、升级文件信息和升级配置信息;
切分子模块,用于在所述升级文件信息和所述升级配置信息与所述升级版本信息相互匹配的情况下,根据所述升级配置信息,将所述升级文件信息进行切分,确定所述升级文件信息中与所述子系统对应的子系统升级文件信息,得到包含所述升级版本信息、所述子系统升级文件信息和所述升级配置信息的子系统升级包;
所述装置还包括:
第一生成模块,用于生成所述子系统的升级任务信息,所述升级任务信息包含子系统升级状态,以及所述子系统升级状态对应的时间信息,所述子系统升级状态包括:正在升级状态、升级超时状态、待升级状态、升级失败状态和升级成功状态中的至少一种;
确定模块,用于在所述子系统升级状态为所述正在升级状态的情况下,根据所述子系统升级状态和所述子系统升级状态对应的时间信息,确定所述子系统处于所述正在升级状态的升级时长;
第二生成模块,用于在所述升级时长大于预设时长的情况下,生成针对所述子系统的预警信息,并将所述子系统升级状态修改为所述升级超时状态;
所述装置包括:
第三生成模块,用于生成升级停止指令,所述升级停止指令用于控制除所述子系统之外的其他子系统停止升级;
第四生成模块,用于在所述升级时长大于预设时长的情况下,生成针对所述子系统的预警信息的步骤之后;删除模块,用于删除所述升级停止指令。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:第一接收模块,用于接收所述子系统发送的所述子系统的升级结果,所述升级结果包括升级成功或升级失败;
更新模块,用于根据所述升级结果更新所述子系统升级状态;
第二发送模块,用于在全部所述子系统中检测所述子系统升级状态为所述待升级状态的待升级子系统,将所述待升级子系统对应的子系统升级包发送至所述待升级子系统,以供所述待升级子系统进行升级。
7.根据权利要求5所述的装置,其特征在于,所述系统升级服务器包括升级状态显示界面;
所述升级状态显示界面用于显示所述子系统升级状态、所述子系统升级状态对应的时间信息和所述预警信息。
8.根据权利要求5所述的装置,其特征在于,所述解析子模块,包括:计算单元,用于根据所述系统升级包,计算所述系统升级包对应的消息摘要算法标识;
确定单元,用于获取所述系统升级包对应的原始消息摘要算法标识,对比所述系统升级包对应的消息摘要算法标识和所述原始消息摘要算法标识,确定所述系统升级包是否发生丢包或错包;
解析单元,用于在所述系统升级包未发生丢包和错包的情况下,解析所述系统升级包,获取所述系统升级包中的升级版本信息、升级文件信息和升级配置信息。 说明书 : 系统的升级方法和装置技术领域[0001] 本申请属于数据安全领域,具体涉及一种系统的升级方法和装置。背景技术[0002] 作为数据安全的防护手段,数据防泄漏系统也逐渐向智能化方向发展,越来越贴合用户的使用习惯,为保证以保证系统的信息安全,以及满足用户日益增长的使用需求,需要系统不断地进行更新和升级。[0003] 现有技术中,包含多个子系统的数据防泄漏系统上线运行的过程中,若发生故障等需要进行版本升级时,运维人员需要将升级包手动传输至每个子系统对应的子系统服务器,具体的,运维人员在升级不同子系统时,首先需要确定该子系统对应的子系统服务器,然后登录到该子系统对应的子系统服务器,进而将升级包上传至该子系统服务器,以供子系统服务器根据升级包进行升级,由于数据防泄漏系统包含多个子系统,因此,运维人员需要依次确定各个子系统对应的子系统服务器,并依次登录到各个子系统服务器,上传升级包至每一个子系统服务器,完成系统的升级。[0004] 但是,在现有技术中,由于数据防泄漏系统的升级过程,需要运维人员通过多次登录和上传升级包的操作,使得用户操作复杂,系统升级过程步骤繁琐,系统升级效率低下。发明内容[0005] 本申请实施例的目的是提供一种系统的升级方法和装置,能够解决现有技术中系统升级过程步骤繁琐,系统升级效率低下的问题。[0006] 为了解决上述技术问题,本申请是这样实现的:[0007] 第一方面,本申请实施例提供了一种系统的升级方法,应用于系统升级服务器,该方法包括:[0008] 提供web页面的访问链接,并在确定客户端通过所述访问链接访问所述web页面的情况下,建立与所述客户端之间的通信链路;[0009] 基于所述通信链路,获取所述客户端通过所述web页面上传的系统升级包;[0010] 响应于通过所述web页面接收到的一键升级指令,根据所述系统升级包中的升级配置信息,将所述系统升级包进行切分,得到系统中包含的子系统对应的子系统升级包;[0011] 将所述子系统升级包发送至对应的子系统,以供所述子系统根据所述子系统升级包进行升级,完成所述系统的升级。[0012] 可选的,在所述得到系统中包含的子系统对应的子系统升级包的步骤之后,所述方法还包括:[0013] 生成所述子系统的升级任务信息,所述升级任务信息包含子系统升级状态,以及所述子系统升级状态对应的时间信息,所述子系统升级状态包括:正在升级状态、升级超时状态、待升级状态、升级失败状态和升级成功状态中的至少一种;[0014] 在所述子系统升级状态为所述正在升级状态的情况下,根据所述子系统升级状态和所述子系统升级状态对应的时间信息,确定所述子系统处于所述正在升级状态的升级时长;[0015] 在所述升级时长大于预设时长的情况下,生成针对所述子系统的预警信息,并将所述子系统升级状态修改为所述升级超时状态。[0016] 可选的,在所述将所述子系统升级包发送至对应的子系统的步骤之后,所述方法还包括:[0017] 接收所述子系统发送的所述子系统的升级结果,所述升级结果包括升级成功或升级失败;[0018] 根据所述升级结果更新所述子系统升级状态;[0019] 在全部所述子系统中检测所述子系统升级状态为所述待升级状态的待升级子系统,将所述待升级子系统对应的子系统升级包发送至所述待升级子系统,以供所述待升级子系统进行升级。[0020] 可选的,在所述生成所述子系统的升级任务信息的步骤之前,所述方法包括:[0021] 生成升级停止指令,所述升级停止指令用于控制除所述子系统之外的其他子系统停止升级;[0022] 在所述升级时长大于预设时长的情况下,生成针对所述子系统的预警信息的步骤之后,所述方法还包括:[0023] 删除所述升级停止指令。[0024] 可选的,所述系统升级服务器包括升级状态显示界面;[0025] 所述升级状态显示界面用于显示所述子系统升级状态、所述子系统升级状态对应的时间信息和所述预警信息。[0026] 可选的,所述系统升级包包括升级版本信息、升级文件信息和升级配置信息,所述根据所述系统升级包中的升级配置信息,将所述系统升级包进行切分,得到系统中包含的子系统对应的子系统升级包的步骤,包括:[0027] 解析所述系统升级包,获取所述系统升级包中的升级版本信息、升级文件信息和升级配置信息;[0028] 在所述升级文件信息和所述升级配置信息与所述升级版本信息相互匹配的情况下,根据所述升级配置信息,将所述升级文件信息进行切分,确定所述升级文件信息中与所述子系统对应的子系统升级文件信息,得到包含所述升级版本信息、所述子系统升级文件信息和所述升级配置信息的子系统升级包。[0029] 可选的,所述解析所述系统升级包,获取所述系统升级包中的升级版本信息、升级文件信息和升级配置信息的步骤,包括:[0030] 根据所述系统升级包,计算所述系统升级包对应的消息摘要算法标识;[0031] 获取所述系统升级包对应的原始消息摘要算法标识,对比所述系统升级包对应的消息摘要算法标识和所述原始消息摘要算法标识,确定所述系统升级包是否发生丢包或错包;[0032] 在所述系统升级包未发生丢包和错包的情况下,解析所述系统升级包,获取所述系统升级包中的升级版本信息、升级文件信息和升级配置信息。[0033] 第二方面,本申请实施例提供了一种系统的升级方法,应用于系统中包含的任一子系统,该方法包括:[0034] 接收系统升级服务器发送的子系统升级包,所述子系统升级包为所述系统升级服务器响应于通过客户端的web页面接收到一键升级指令,根据系统升级包中的升级配置信息,将所述系统升级包进行切分后得到的所述子系统对应的升级包;[0035] 根据所述子系统升级包进行升级。[0036] 可选的,所述系统升级包中包括升级文件信息和升级配置信息,所述子系统升级包中包含所述升级配置信息和子系统升级文件信息,所述子系统升级文件信息为根据所述升级配置信息将所述升级文件信息进行切分后得到的与所述子系统对应的信息,[0037] 所述根据所述子系统升级包进行升级的步骤,包括:[0038] 将所述子系统原有的待升级文件信息替换为所述子系统升级文件信息,将所述子系统原有的待升级配置信息替换为所述升级配置信息;[0039] 根据所述升级配置信息,对所述子系统对应的数据库进行结构和数据更新。[0040] 可选的,在所述将所述子系统原有的待升级文件信息替换为所述子系统升级文件信息,将所述子系统原有的待升级配置信息替换为所述升级配置信息的步骤之前,所述方法还包括:[0041] 根据所述子系统原有的待升级文件信息和待升级配置信息,生成备份信息;[0042] 在所述将所述子系统原有的待升级文件信息替换为所述子系统升级文件信息,将所述子系统原有的待升级配置信息替换为所述升级配置信息的步骤之后,所述方法还包括:[0043] 检测所述子系统的升级结果,所述升级结果包括升级成功或升级失败;[0044] 将所述升级结果发送至所述系统升级服务器;[0045] 在所述升级结果为升级失败的情况下,根据所述备份文件,恢复所述子系统原有的待升级文件信息和待升级配置信息。[0046] 第三方面,本申请实施例提供了一种系统的升级装置,应用于系统升级服务器,该装置包括:[0047] 建立模块,用于提供web页面的访问链接,并在确定客户端通过所述访问链接访问所述web页面的情况下,建立与所述客户端之间的通信链路;[0048] 获取模块,用于基于所述通信链路,获取所述客户端通过所述web页面上传的系统升级包;[0049] 切分模块,用于响应于通过所述web页面接收到的一键升级指令,根据所述系统升级包中的升级配置信息,将所述系统升级包进行切分,得到系统中包含的子系统对应的子系统升级包;[0050] 第一发送模块,用于将所述子系统升级包发送至对应的子系统,以供所述子系统根据所述子系统升级包进行升级,完成所述系统的升级。[0051] 可选的,所述装置还包括:[0052] 第一生成模块,用于生成所述子系统的升级任务信息,所述升级任务信息包含子系统升级状态,以及所述子系统升级状态对应的时间信息,所述子系统升级状态包括:正在升级状态、升级超时状态、待升级状态、升级失败状态和升级成功状态中的至少一种;[0053] 确定模块,用于在所述子系统升级状态为所述正在升级状态的情况下,根据所述子系统升级状态和所述子系统升级状态对应的时间信息,确定所述子系统处于所述正在升级状态的升级时长;[0054] 第二生成模块,用于在所述升级时长大于预设时长的情况下,生成针对所述子系统的预警信息,并将所述子系统升级状态修改为所述升级超时状态。[0055] 可选的,所述装置还包括:[0056] 第一接收模块,用于接收所述子系统发送的所述子系统的升级结果,所述升级结果包括升级成功或升级失败;[0057] 更新模块,用于根据所述升级结果更新所述子系统升级状态;[0058] 第二发送模块,用于在全部所述子系统中检测所述子系统升级状态为所述待升级状态的待升级子系统,将所述待升级子系统对应的子系统升级包发送至所述待升级子系统,以供所述待升级子系统进行升级。[0059] 可选的,所述装置包括:[0060] 第三生成模块,用于生成升级停止指令,所述升级停止指令用于控制除所述子系统之外的其他子系统停止升级;[0061] 第四生成模块,用于在所述升级时长大于预设时长的情况下,生成针对所述子系统的预警信息的步骤之后,所述方法还包括:[0062] 删除模块,用于删除所述升级停止指令。[0063] 可选的,所述系统升级服务器包括升级状态显示界面;[0064] 所述升级状态显示界面用于显示所述子系统升级状态、所述子系统升级状态对应的时间信息和所述预警信息。[0065] 可选的,所述系统升级包包括升级版本信息、升级文件信息和升级配置信息,所述切分模块,包括:[0066] 解析子模块,用于解析所述系统升级包,获取所述系统升级包中的升级版本信息、升级文件信息和升级配置信息;[0067] 切分子模块,用于在所述升级文件信息和所述升级配置信息与所述升级版本信息相互匹配的情况下,根据所述升级配置信息,将所述升级文件信息进行切分,确定所述升级文件信息中与所述子系统对应的子系统升级文件信息,得到包含所述升级版本信息、所述子系统升级文件信息和所述升级配置信息的子系统升级包。[0068] 可选的,所述解析子模块,包括:[0069] 计算单元,用于根据所述系统升级包,计算所述系统升级包对应的消息摘要算法标识;[0070] 确定单元,用于获取所述系统升级包对应的原始消息摘要算法标识,对比所述系统升级包对应的消息摘要算法标识和所述原始消息摘要算法标识,确定所述系统升级包是否发生丢包或错包;[0071] 解析单元,用于在所述系统升级包未发生丢包和错包的情况下,解析所述系统升级包,获取所述系统升级包中的升级版本信息、升级文件信息和升级配置信息。[0072] 第四方面,本申请实施例提供了一种系统的升级装置,应用于系统中包含的任一子系统,该装置包括:[0073] 第二接收模块,用于接收系统升级服务器发送的子系统升级包,所述子系统升级包为所述系统升级服务器响应于通过客户端的web页面接收到一键升级指令,根据系统升级包中的升级配置信息,将所述系统升级包进行切分后得到的所述子系统对应的升级包;[0074] 升级模块,用于根据所述子系统升级包进行升级。[0075] 可选的,所述系统升级包中包括升级文件信息和升级配置信息,所述子系统升级包中包含所述升级配置信息和子系统升级文件信息,所述子系统升级文件信息为根据所述升级配置信息将所述升级文件信息进行切分后得到的与所述子系统对应的信息,所述升级模块,包括:[0076] 替换子模块,用于将所述子系统原有的待升级文件信息替换为所述子系统升级文件信息,将所述子系统原有的待升级配置信息替换为所述升级配置信息;[0077] 更新子模块,用于根据所述升级配置信息,对所述子系统对应的数据库进行结构和数据更新。[0078] 可选的,所述装置还包括:[0079] 生成子模块,用于根据所述子系统原有的待升级文件信息和待升级配置信息,生成备份信息;[0080] 检测子模块,用于检测所述子系统的升级结果,所述升级结果包括升级成功或升级失败;[0081] 发送子模块,用于将所述升级结果发送至所述系统升级服务器;[0082] 恢复子模块,用于在所述升级结果为升级失败的情况下,根据所述备份文件,恢复所述子系统原有的待升级文件信息和待升级配置信息。[0083] 在本申请中,运维人员在升级包含多个子系统的系统时,可以直接将系统升级包通过与系统升级服务器建立通信链路的客户端上的web页面进行上传,无需确定各个子系统对应的子系统服务器,并将系统升级包依次发送给各个子系统对应的子系统服务器,使得系统升级的步骤简洁,提高了系统的升级效率。附图说明[0084] 图1为本申请实施例提供的一种升级系统的结构图;[0085] 图2为本申请实施例提供的一种系统的升级方法的步骤流程图;[0086] 图3为本申请实施例提供的一种系统的升级方法的具体步骤流程图;[0087] 图4为本申请实施例提供的一种升级状态显示界面的示意图;[0088] 图5为本申请实施例提供的一种详细的升级状态显示界面的示意图;[0089] 图6为本申请实施例提供的另一种系统的升级方法的步骤流程图;[0090] 图7为本申请实施例提供的另一种系统的升级方法的具体步骤流程图;[0091] 图8为本申请实施例提供的一种系统的升级执行流程图;[0092] 图9为本申请实施例提供的一种系统的升级装置的结构示意图;[0093] 图10为本申请实施例提供的另一种系统的升级装置的结构示意图。具体实施方式[0094] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。[0095] 本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。[0096] 下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的系统的升级进行详细地说明。[0097] 图1示出了本申请实施例提供的一种升级系统的结构图,如图1所示,该升级系统可以包括系统升级服务器10、子系统20和客户端30。[0098] 其中,所述客户端30的web页面对应有系统升级服务器10提供的访问链接,使得系统升级服务器10和客户端30之间可以通过所述访问连接实现通信连接,同时,所述客户端30的web页面用于与系统管理人员进行交互,因此,包含运维人员的系统管理人员可以通过访问所述客户端30的web页面,在客户端30的web页面中基于系统升级服务器10和客户端30之间通信连接上传系统升级包,管理系统的升级版本。[0099] 其中,所述系统升级服务器10可以包含多个具有主从关系的控制台,从而可以实现系统升级服务器10的高可用,在其中一台控制台出现故障的情况下,利用其它控制台完成相关的系统升级操作。[0100] 所述系统升级服务器10在接收到系统升级包之后,可以对各个子系统20进行升级管理,从系统升级包中切分得到各个子系统20对应的子系统升级包,进而将子系统升级包发送至对应的子系统20,使得子系统20在接收到子系统升级包之后,子系统20对应的子系统服务器依据子系统升级包对所述子系统20进行升级,在完成全部子系统20的升级之后,实现系统升级。[0101] 相应的,子系统20可以包含多个检测器,所述检测器即所述子系统20对应的子系统服务器,从而可以实现子系统20的高可用,在其中一台检测器出现故障的情况下,利用其它检测器完成相关的子系统升级操作。[0102] 参照图2,示出了本申请实施例提供的一种系统的升级方法的步骤流程图,应用于系统升级服务器,如图2所示,该系统的升级方法具体可以包括如下步骤:[0103] 步骤101、提供web页面的访问链接,并在确定客户端通过所述访问链接访问所述web页面的情况下,建立与所述客户端之间的通信链路。[0104] 在该步骤中,参照图1,系统升级服务器10可以提供web页面的访问链接,进而在确定客户端30通过该访问链接访问web页面的情况下,建立系统升级服务器10与客户端30之间的通信链路,使得包含运维人员的系统管理人员可以通过访问所述客户端30的web页面,在客户端30的web页面中基于系统升级服务器10和客户端30之间通信连接上传系统升级包,管理系统的升级版本。[0105] 步骤102、基于所述通信链路,获取所述客户端通过所述web页面上传的系统升级包。[0106] 在该步骤中,在建立系统升级服务器与客户端之间的通信链路之后,系统升级服务器可以基于该通信链路,获取客户端通过客户端的web页面上传的系统升级包。对于包含多个子系统的系统而言,无需确定各个子系统对应的子系统服务器,并将系统升级包依次发送给各个子系统对应的子系统服务器以完成系统的升级,因此,使得系统升级的步骤简洁,提高了系统的升级效率。[0107] 其中,所述系统升级包可以为运维人员根据指定规范制作的用于进行系统升级的升级包,可以包括升级版本信息、升级文件信息和升级配置信息。所述升级文件信息可以为用于进行系统升级的相关文件信息,所述升级配置信息可以为用于完成系统升级过程的相关配置信息,所述升级版本信息可以为该系统升级包对应的系统的版本信息等。[0108] 步骤103、响应于通过所述web页面接收到的一键升级指令,根据所述系统升级包中的升级配置信息,将所述系统升级包进行切分,得到系统中包含的子系统对应的子系统升级包。[0109] 在该步骤中,系统升级服务器在接收到系统升级包之后,响应于通过web页面接收到的一键升级指令,可以对接收到的系统升级包进行切分,得到系统中每个子系统对应的子系统升级包。[0110] 具体的,可以根据系统升级包中的升级配置信息,将接收到的系统升级包按照所述配置信息中的配置规定进行切分,从而获得系统中每个子系统对应的子系统升级包。[0111] 其中,所述一键升级指令可以为运维人员在所述客户端的web页面中针对一键升级按钮的选择操作,使得运维人员在完成系统升级包的上传之后,可以通过针对web页面中的一键升级按钮的点击等选择操作,进而完成系统的自动升级,从而减少了运维人员的操作步骤,提升了用户的使用体验感。[0112] 所述系统可以为具有信息收集、处理和展示,命令组装、下发和结果接受等功能的系统,所述子系统可以为具有特定功能的服务系统,多个不同功能的子系统在综合管理下可形成一套完整的业务流程线。[0113] 步骤104、将所述子系统升级包发送至对应的子系统,以供所述子系统根据所述子系统升级包进行升级,完成所述系统的升级。[0114] 在该步骤中,系统升级服务器在确定了系统中包含的各个子系统对应的子系统升级包之后,可以进一步将子系统升级包发送至对应的子系统,以供子系统中的子系统服务器根据子系统升级包,对所述子系统进行升级,在实现全部子系统的升级之后,完成系统的升级。[0115] 可以理解地,上述示例仅是为了更好地理解本申请实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。[0116] 综上所述,本申请实施例提供的系统的升级方法,运维人员在升级包含多个子系统的系统时,可以直接将系统升级包通过与系统升级服务器建立通信链路的客户端上的web页面进行上传,无需确定各个子系统对应的子系统服务器,并将系统升级包依次发送给各个子系统对应的子系统服务器,使得系统升级的步骤简洁,提高了系统的升级效率。[0117] 参照图3,示出了本申请实施例提供的一种系统的升级方法的具体步骤流程图,如图3所示,该系统的升级方法具体可以包括如下步骤:[0118] 步骤201、提供web页面的访问链接,并在确定客户端通过所述访问链接访问所述web页面的情况下,建立与所述客户端之间的通信链路。[0119] 该步骤的实现方式具体可参照上述步骤101,此处不再赘述。[0120] 步骤202、基于所述通信链路,获取所述客户端通过所述web页面上传的系统升级包。[0121] 该步骤的实现方式具体可参照上述步骤102,此处不再赘述。[0122] 步骤203、响应于通过所述web页面接收到的一键升级指令,解析所述系统升级包,获取所述系统升级包中的升级版本信息、升级文件信息和升级配置信息。[0123] 在该步骤中,系统升级服务器在接收到系统升级包之后,响应于通过web页面接收到的一键升级指令,可以对接收到的系统升级包进行解析,得到系统升级包中的升级版本信息、升级文件信息和升级配置信息。[0124] 其中,所述升级版本信息可以为该系统升级包对应的系统版本的版本信息,所述升级文件信息可以为用于进行系统升级的相关文件信息,所述升级配置信息可以为用于完成系统升级过程的相关配置信息。[0125] 在本发明实施例中,若所述系统为计算机编程语言(java)系统,则该系统对应的系统升级包中的升级文件信息可以包括编码(class)文件、页面文件和依赖Java归档(JavaARchive,jar)包;若所述系统为C系统,则该系统对应的系统升级包中的升级文件信息可以包括动态库和可执行文件。[0126] 可选的,步骤203具体可以包括:[0127] 子步骤2031、根据所述系统升级包,计算所述系统升级包对应的消息摘要算法标识。[0128] 在该步骤中,在系统升级服务器在接收到系统升级包之后,响应于通过web页面接收到的一键升级指令,可以首先根据系统升级包,计算所述系统升级包对应的消息摘要算法(Message‑DigestAlgorithm,MD5)标识。[0129] 其中,所述MD5标识一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hashvalue),用于确保信息传输完整一致,具体的,可以采用MD5验证程序计算所述系统升级包的MD5标识。[0130] 子步骤2032、获取所述系统升级包对应的原始消息摘要算法标识,对比所述系统升级包对应的消息摘要算法标识和所述原始消息摘要算法标识,确定所述系统升级包是否发生丢包或错包。[0131] 在该步骤中,系统升级服务器可以在获取系统升级包的同时,获取所述系统升级包对应的原始MD5标识,进而对比系统升级包对应的MD5标识和原始MD5标识,从而确定接收到的系统升级包是否发生了丢包或错包。[0132] 具体的,若系统升级包对应的MD5标识和原始MD5标识一致,则说明系统升级包未发生丢包和错包,若系统升级包对应的MD5标识和原始MD5标识存在差异,则说明系统升级包在传输的过程中发生了丢包或错包。[0133] 子步骤2033、在所述系统升级包未发生丢包和错包的情况下,解析所述系统升级包,获取所述系统升级包中的升级版本信息、升级文件信息和升级配置信息。[0134] 在该步骤中,在判断系统升级包未发生丢包和错包的情况下,对接收到的系统升级包进行解析,得到系统升级包中的升级版本信息、升级文件信息和升级配置信息。[0135] 步骤204、在所述升级文件信息和所述升级配置信息与所述升级版本信息相互匹配的情况下,根据所述升级配置信息,将所述升级文件信息进行切分,确定所述升级文件信息中与所述子系统对应的子系统升级文件信息,得到包含所述升级版本信息、所述子系统升级文件信息和所述升级配置信息的子系统升级包。[0136] 在该步骤中,系统升级服务器在解析系统升级包,获得所述系统升级包中包含的升级版本信息、升级文件信息和升级配置信息之后,判断系统升级包中包含的升级文件信息和升级配置信息是否是与升级版本信息相互匹配的信息。[0137] 具体的,若系统升级包中的升级文件信息和升级配置信息与升级版本信息相互匹配,则说明系统升级包的内部包信息与版本信息一致。进而再根据系统升级包中的升级配置信息,将升级文件信息进行切分。[0138] 具体的,所述升级配置信息中可以规定所述系统升级包中的升级文件信息对应的子系统,从而可以根据升级配置信息按照对应的子系统不同,将升级文件信息进行切分,确定升级文件信息中与每个子系统对应的子系统升级文件信息,得到包含升级版本信息、子系统升级文件信息和升级配置信息的子系统升级包。[0139] 步骤205、生成升级停止指令,所述升级停止指令用于控制除所述子系统之外的其他子系统停止升级。[0140] 在该步骤中,系统升级服务器在确定了各子系统对应的子系统升级包之后,可以生成升级停止指令,用于控制除当前的子系统之外的其他子系统停止升级。[0141] 具体的,系统升级服务器可以通过添加升级锁的方式,生成升级停止指令,使得除当前的子系统之外的后续其他子系统不再执行升级过程,从而确保升级的安全性。[0142] 在本发明实施例中,还可以生成并发送停止服务指令至子系统,使得子系统在进行升级的过程中,子系统停止服务,从而防止子系统出现信息的堆积等问题。[0143] 步骤206、生成所述子系统的升级任务信息。[0144] 在该步骤中,系统升级服务器可以生成子系统的升级任务信息。[0145] 其中,所述升级任务信息可以包含子系统升级状态,以及子系统升级状态对应的时间信息,所述子系统升级状态可以包括:正在升级状态、升级超时状态、待升级状态、升级失败状态和升级成功状态中的至少一种。[0146] 在本发明实施例中,可以将生成的升级任务信息存储在特定的数据库中,以供进行升级超时检测。[0147] 步骤207、在所述子系统升级状态为所述正在升级状态的情况下,根据所述子系统升级状态和所述子系统升级状态对应的时间信息,确定所述子系统处于所述正在升级状态的升级时长。[0148] 在该步骤中,在子系统升级状态为正在升级状态的情况下,可以根据升级任务信息中的子系统升级状态和子系统升级状态对应的时间信息,确定子系统处于正在升级状态的升级时长。[0149] 具体的,可以通过扫描用于存储升级任务信息的数据库,从所述数据库中获取子系统升级状态为正在升级状态的子系统,并根据对应的子系统升级状态对应的时间信息,确定该子系统处于正在升级状态的起始时间,从而确定该子系统处于正在升级状态的升级时长。[0150] 步骤208、在所述升级时长大于预设时长的情况下,生成针对所述子系统的预警信息,并将所述子系统升级状态修改为所述升级超时状态。[0151] 在该步骤中,可以在升级时长大于预设时长的情况下,说明该子系统的升级过程花费了较长的时间,则可以生成针对该子系统的预警信息,并将存储在数据库中升级任务信息的子系统升级状态,由正在升级状态修改为升级超时状态。[0152] 其中,所述预设时长可以为预先设置的固定时长,例如5小时或10小时。[0153] 可选的,系统升级服务器还可以包括升级状态显示界面,其中,所述升级状态显示界面可以用于显示上述步骤确定的子系统升级状态、子系统升级状态对应的时间信息和预警信息等升级信息,使得运维人员等系统管理人员可以通过升级状态显示界面实时监控和了解系统中各子系统的升级情况。[0154] 图4示出了本申请实施例提供的一种升级状态显示界面的示意图,如图4所示,可以在显示界面中展示了数据防泄漏系统管理平台的主菜单中,位于系统升级管理层面的显示界面,用于显示数据防泄漏系统在升级过程中产生的升级消息,包括系统版本、升级类型、更新内容、系统升级包MD5标识、升级结果、创建人员、创建时间、更新人员、更新时间和操作等。其中,升级结果和操作可以表征子系统升级状态,创建时间和更新时间可以表征子系统升级状态对应的时间信息,还可以在子系统的升级时长大于预设时长的情况下,在该显示界面中显示生成的预警信息。[0155] 图5示出了本申请实施例提供的一种详细的升级状态显示界面的示意图,如图5所示,运维人员可以在如图4所示的显示界面中查看多条系统升级过程中产生的升级消息,在需要查看某条升级消息的详细信息时,可以通过点击图4中每条升级消息中的“查看详情”按钮实现,针对图4中的第2条升级消息,图5为运维人员点击“查看详情”按钮后,展示的该条升级消息的详细信息,可以包括每次升级过程对应的服务器名称、升级状态、升级结果、升级模式、升级人员和升级时间等。[0156] 步骤209、删除所述升级停止指令。[0157] 在该步骤中,在子系统的升级时长大于预设时长的情况下,在生成针对所述子系统的预警信息的同时,还可以删除所述升级停止指令,即释放升级锁,使得其他子系统可以执行升级过程。[0158] 步骤210、将所述子系统升级包发送至对应的子系统。[0159] 在该步骤中,系统升级服务器在确定了系统中包含的各个子系统对应的子系统升级包之后,可以进一步将子系统升级包发送至对应的子系统,以供子系统中的子系统服务器根据子系统升级包,对所述子系统进行升级。[0160] 在本发明实施例中,将子系统升级包发送至对应的子系统的过程,可以基于接口描述语言和二进制通讯协议(Thrift协议),所述Thrift协议是一种远程过程调用(rpc)常用的通信协议,它使用接口描述语言(Interfacedescriptionlanguage,idl)定义rpc方法和数据结构,使用thrift编译器根据idl定义生成不同语言的客户端代码和服务端代码,由这些生成的代码实现远程方法的调用和调用参数的解析,实现命令下发和接收,以及文件的传输。[0161] 此外,在本发明实施例中,还可以将升级任务信息和子系统升级包共同发送至子系统,使得在检测到子系统的升级结果之后,由子系统根据升级结果记录并更新升级任务信息中的子系统升级状态,以及子系统升级状态对应的时间信息等。[0162] 步骤211、接收所述子系统发送的所述子系统的升级结果,所述升级结果包括升级成功或升级失败。[0163] 在该步骤中,系统升级服务器在将子系统升级包发送至对应的子系统之后,子系统中的子系统服务器可以根据子系统升级包对子系统进行数据备份、可执行文件的替换、数据库结构和数据更新、回退等升级操作,在完成升级操作之后,可以进一步检测子系统的升级结果,并将升级结果返回至系统升级服务器,以供系统升级服务器记录该子系统的升级结果,并根据升级结果继续升级下一个子系统,以完成系统的升级过程。其中,子系统的升级结果可以包括升级成功和升级失败。[0164] 步骤212、根据所述升级结果更新所述子系统升级状态。[0165] 在该步骤中,系统升级服务器在接收到子系统发送的升级结果之后,可以根据升级结果更新子系统的系统升级状态。[0166] 例如,若子系统的系统升级状态为正在升级状态,子系统的升级结果为升级成功,则可以将子系统的系统升级状态由正在升级状态更新为升级成功状态;子系统的升级结果为升级失败,则可以将子系统的系统升级状态由正在升级状态更新为升级失败状态。以供系统升级服务器可以通过扫描更新后的系统升级状态,确定仍旧处于待升级状态的子系统,从而可以针对该子系统进行系统升级,最终完成全部子系统的升级,进而实现整个系统的升级。[0167] 步骤213、在全部所述子系统中检测所述子系统升级状态为所述待升级状态的待升级子系统,将所述待升级子系统对应的子系统升级包发送至所述待升级子系统,以供所述待升级子系统进行升级。[0168] 在该步骤中,系统升级服务器可以在全部子系统中扫描检测所述子系统升级状态为待升级状态的待升级子系统,从而可以依次将每个待升级子系统对应的子系统升级包发送至待升级子系统,以供每个待升级子系统依次进行升级,直至全部待升级子系统完成升级过程,进而实现整个系统的升级。[0169] 综上所述,运维人员在升级包含多个子系统的系统时,可以直接将系统升级包通过与系统升级服务器建立通信链路的客户端上的web页面进行上传,无需确定各个子系统对应的子系统服务器,并将系统升级包依次发送给各个子系统对应的子系统服务器,使得系统升级的步骤简洁,提高了系统的升级效率。[0170] 此外,系统升级服务器还可以包括升级状态显示界面,其中,升级状态显示界面可以用于显示子系统升级状态、子系统升级状态对应的时间信息和预警信息等升级信息,使得运维人员等系统管理人员可以通过升级状态显示界面实时监控和了解系统中各子系统的升级情况。[0171] 参照图6,示出了本申请实施例提供的另一种系统的升级方法的步骤流程图,应用于系统中的任一子系统,如图6所示,该系统的升级方法具体可以包括如下步骤:[0172] 步骤301、接收系统升级服务器发送的子系统升级包。[0173] 在该步骤中,子系统接收并解析系统升级服务器发送的子系统升级包。[0174] 其中,子系统升级包可以为系统升级服务器响应于通过客户端的web页面接收到一键升级指令,根据系统升级包中的升级配置信息,将系统升级包进行切分后得到的子系统对应的升级包。进一步的,所述系统升级包可以为系统升级服务器基于与客户端之间的通信链路,从客户端的web页面上获取到的,运维人员等系统管理人员上传的用于进行系统升级的数据包。[0175] 在本发明实施例中,子系统在接收到子系统升级包之后,可以从子系统升级包中解析得到子系统的类型,进而根据子系统的类型以及预先设置的可进行升级的子系统的类型,校验该子系统的升级操作是否可行,并在子系统升级包中解析得到子系统的类型属于预先设置的可进行升级的子系统的类型的情况下,进一步执行子系统的升级,若子系统升级包中解析得到子系统的类型不属于预先设置的可进行升级的子系统,则向系统升级服务器返回升级错误信息。[0176] 步骤302、根据所述子系统升级包进行升级。[0177] 在该步骤中,子系统在接收到对应的子系统升级包之后,可以根据子系统升级包进行子系统的升级。[0178] 具体的,子系统中的子系统服务器可以根据子系统升级包对子系统进行数据备份、可执行文件的替换、数据库结构和数据更新、回退等升级操作。[0179] 综上所述,本申请实施例提供的系统的升级方法,运维人员在升级包含多个子系统的系统时,可以直接将系统升级包通过与系统升级服务器建立通信链路的客户端上的web页面进行上传,无需确定各个子系统对应的子系统服务器,并将系统升级包依次发送给各个子系统对应的子系统服务器,使得系统升级的步骤简洁,提高了系统的升级效率。[0180] 参照图7,示出了本申请实施例提供的另一种系统的升级方法的具体步骤流程图,如图7所示,该系统的升级方法具体可以包括如下步骤:[0181] 步骤401、接收系统升级服务器发送的子系统升级包。[0182] 该步骤的实现方式具体可参照上述步骤301,此处不再赘述。[0183] 步骤402、根据所述子系统原有的待升级文件信息和待升级配置信息,生成备份信息。[0184] 在该步骤中,子系统在接收到子系统升级包之后,可以首先进行子系统数据的备份。[0185] 具体的,可以根据子系统原有的待升级文件信息和待升级配置信息,生成备份信息。[0186] 在本发明实施例中,子系统数据的备份过程,可以通过过滤式数据库备份的方式实现。具体的,可以在将子系统对应的数据库中原有的待升级文件信息和待升级配置信息备份的过程中,将将冗余表数据进行过滤,以保持备份信息的精简。在关系型数据库管理系统(mysql)中可采用的过滤方式有:(1)mysql用于转存储数据库的实用程序(mysqldump)命令中利用“‑‑ignore‑table”指令;(2)在备份前进行清除表数据。[0187] 步骤403、将所述子系统原有的待升级文件信息替换为所述子系统升级文件信息,将所述子系统原有的待升级配置信息替换为所述升级配置信息。[0188] 在该步骤中,子系统的升级过程可以包括可执行文件的替换,具体可以为将子系统原有的待升级文件信息替换为所述子系统升级文件信息,将所述子系统原有的待升级配置信息替换为所述升级配置信息。[0189] 其中,系统升级包中包括升级文件信息和升级配置信息,子系统升级包中包含升级配置信息和子系统升级文件信息,子系统升级文件信息为根据升级配置信息将升级文件信息进行切分后得到的与子系统对应的信息。[0190] 在本发明实施例中,在进行子系统的升级之前,可以首先停止子系统中的各服务进程,然后再执行子系统的升级步骤。[0191] 步骤404、根据所述升级配置信息,对所述子系统对应的数据库进行结构和数据更新。[0192] 在该步骤中,子系统的升级过程还可以包括数据库结构和数据更新,具体的,可以根据升级配置信息,对子系统赌赢的数据库进行结构和数据的更新。[0193] 步骤405、检测所述子系统的升级结果,所述升级结果包括升级成功或升级失败。[0194] 在该步骤中,子系统中的子系统服务器在完成升级操作之后,可以进一步检测子系统的升级结果。其中,子系统的升级结果可以包括升级成功和升级失败。[0195] 步骤406、将所述升级结果发送至所述系统升级服务器。[0196] 在该步骤中,子系统在检测得到子系统的升级结果之后,可以进一步将升级结果返回至系统升级服务器,以供系统升级服务器记录该子系统的升级结果,并根据升级结果继续升级下一个子系统,以完成系统的升级过程。[0197] 此外,子系统还可以将备份信息也返回至系统升级服务器,使得系统升级服务器可以接收子系统的备份信息,并记录备份信息至升级日志中,以供运维人员等系统管理人员可以通过查询升级日志,获取子系统的备份信息和相关信息等,了解子系统的升级进程等。[0198] 步骤407、在所述升级结果为升级失败的情况下,根据所述备份文件,恢复所述子系统原有的待升级文件信息和待升级配置信息。[0199] 在该步骤中,若子系统的升级结果为升级失败,则进行回退操作,与子系统升级相反,子系统的回退操作指用备份好的文件替换现有的可执行文件并重新加载,以及将数据库表结构和数据信息恢复至备份的数据库信息的过程。[0200] 在本发明实施例中,可以根据子系统进行升级之前得到的备份信息,恢复子系统原有的待升级文件信息和待升级配置信息,确保子系统在升级失败的情况下,仍旧能够正常工作。[0201] 需要说明的是,回退操作只支持最新升级后的版本回退至上个版本,回退包为子系统进行升级之前得到的备份信息,例如,子系统升级后的版本有严重问题,则需要回退上个版本。[0202] 此外,回退操作也能够由系统升级服务器执行,子系统在升级失败之后,可以将备份信息的路径和升级失败的升级结果,以及包含回退操作详细信息的回退信息,例如时间信息等反馈至系统升级服务器。系统升级服务器执行的回退逻辑与升级类似,系统升级服务器可以依次发送回退命令至各子系统,以实现各个待回退的子系统的回退操作。回退场景举例:升级后的版本有严重问题,则需要回退上个版本。[0203] 进一步的,系统升级服务器也能够进行回退超时检测,具体的,可以将子系统反馈的回退信息之后,可以将回退信息也存储在特定的数据库中,以供进行回退超时检测,使得系统升级服务器可以通过扫描用于存储回退信息的数据库,从所述数据库中获取子系统的升级结果为升级失败的子系统,并根据对应的子系统对应的回退信息,确定该子系统处于进行回退操作的起始时间,从而确定该子系统执行回退操作的回退时长,并在回退时长大于预设时长的情况下,说明该子系统的回退操作花费了较长的时间,则可以生成针对该子系统的回退预警信息。[0204] 综上所述,运维人员在升级包含多个子系统的系统时,可以直接将系统升级包通过与系统升级服务器建立通信链路的客户端上的web页面进行上传,无需确定各个子系统对应的子系统服务器,并将系统升级包依次发送给各个子系统对应的子系统服务器,使得系统升级的步骤简洁,提高了系统的升级效率。[0205] 图8示出了本申请实施例提供的一种系统的升级执行流程图,如图7所示,本发明实施例中的系统的升级方法的具体执行流程可以包括以下步骤:[0206] 步骤S1、上传系统升级包。[0207] 在该步骤中,运维人员可以向系统升级服务器上传系统升级包。[0208] 步骤S2、MD5标识是否对应。[0209] 在该步骤中,系统升级服务器可以检验系统升级包的MD5标识,判断MD5标识是否相互对应,若对应,则执行步骤S3,若不对应,则执行步骤S4.[0210] 步骤S3、点击一键升级按钮。[0211] 在该步骤中,系统升级包的MD5标识相互对应,说明系统升级包在上传过程中未发生丢包和错包,进而,用户可以通过点击一键升级按钮,对该系统进行一键升级。[0212] 步骤S4、返回校验不通过,暂停升级。[0213] 在该步骤中,系统升级包的MD5标识不对应,说明系统升级包在上传的过程中发生了丢包或错包,进而,可以结束系统升级过程。[0214] 步骤S5、生成升级任务信息、子系统升级包。[0215] 在该步骤中,系统升级服务器可以生成升级任务信息,其中,所述升级任务信息可以包含子系统升级状态,以及子系统升级状态对应的时间信息,所述子系统升级状态可以包括:正在升级状态、升级超时状态、待升级状态、升级失败状态和升级成功状态中的至少一种,所述升级任务信息用于进行升级超时检测。[0216] 在本发明实施例中,步骤S5之后,可以执行步骤S19,将生成的升级任务信息存储在特定的数据库中,以供进行升级超时检测。[0217] 同时,系统升级服务器还可以根据系统升级包,生成系统中包含的各个子系统对应的子系统升级包,以供各个子系统依据子系统升级包完成各子系统的升级。[0218] 步骤S6、下发子系统升级包。[0219] 在该步骤中,系统升级服务器将子系统升级包下发至对应的子系统,以供子系统依据子系统升级包完成子系统的升级。[0220] 步骤S7、接收子系统升级包。[0221] 在该步骤中,子系统接收系统升级服务器下发的子系统升级包。[0222] 步骤S8、备份原有文件,解压子系统升级包。[0223] 在该步骤中,子系统在进行子系统的升级之前,可以首先进行子系统的备份,以将子系统的原有文件进行备份,具体的,可以将整个目录除了日志文件进行压缩,得到备份文件。[0224] 同时,子系统可以解压子系统升级包,从而解析子系统升级包中包含的数据。[0225] 步骤S9、可执行文件的替换。[0226] 在该步骤中,子系统可以将子系统升级包中解压得到的可执行文件进行替换。[0227] 具体的,可以为将子系统原有的待升级文件信息替换为子系统升级包中的子系统升级文件信息,将子系统原有的待升级配置信息替换为子系统升级包中的升级配置信息。[0228] 在本发明实施例中,所述替换过程,具体可以为:首先读取待更新的配置文件信息文件名称和文件路径,然后根据待替换文件信息更新配置信息。[0229] 步骤S10、调用重启服务脚本重启服务。[0230] 在该步骤中,在完成子系统的升级之后,可以重启子系统。[0231] 具体的,可以调用重启服务脚本以重启子系统的服务。[0232] 步骤S11、升级结果是否为升级失败。[0233] 在该步骤中,在重启子系统之后,可以根据重启后子系统的服务判断子系统的升级结果,以确定子系统是否升级成功。若子系统升级失败,则执行步骤S12,对子系统进行回退操作;若子系统升级成功,则执行步骤S13,记录升级结果。[0234] 步骤S12、回退操作。[0235] 在该步骤中,子系统升级失败,则可以对子系统进行回退操作。[0236] 具体的,可以将子系统中的现有文件进行删除,解压子系统升级前的备份文件进行覆盖,并重启子系统的服务。[0237] 步骤S13、记录结果。[0238] 在该步骤中,子系统可以记录子系统的升级结果,以及子系统的回退结果。[0239] 步骤S14、上传记录结果。[0240] 在该步骤中,子系统将记录的结果上传至系统升级服务器。[0241] 步骤S15、记录结果。[0242] 在该步骤中,系统升级服务器接收子系统上传的记录结果,并将该记录结果也记录在系统升级服务器中。[0243] 步骤S16、是否有待升级子系统。[0244] 在该步骤中,系统升级服务器检测系统中是否存在有待升级的子系统,若有,则执行步骤S17,进行下一个子系统的升级,直至完成全部子系统的升级。若系统中不存在待升级子系统,执行步骤S18,判断系统中包含的全部子系统是否均完成升级。[0245] 步骤S17、进行下一个子系统的升级。[0246] 在该步骤中,统升级服务器检测到系统中仍旧存在有待升级的子系统,则继续进行下一个子系统的升级,重负执行步骤S6,下发下一个子系统对应的子系统升级包至子系统,以供该子系统进行升级,直至完成全部子系统的升级。[0247] 步骤S18、全部子系统已全部完成升级。[0248] 在该步骤中,判断系统中包含的全部子系统是否均完成升级,若全部子系统已经全部完成升级,则说明整个系统已完成升级,从而可以结束系统升级过程。[0249] 步骤S19、升级任务信息存储。[0250] 在该步骤中,系统升级服务器在步骤S5中生成升级任务信息之后,可以将升级任务信息存储在特定的数据库中,以供进行升级超时检测。[0251] 此外,系统升级服务器也能够进行回退超时检测,具体的,子系统在进行了回退操作之后,可以将相应的回退信息反馈至系统升级服务器,进而将回退信息也存储在特定的数据库中,以供进行回退超时检测,[0252] 步骤S20、数据库获取所有升级和回退任务。[0253] 在该步骤中,系统升级服务器可以通过扫描数据库,从而获取数据库中存储的所有升级和回退任务。[0254] 步骤S21、遍历所有任务,判断是否已超时。[0255] 在该步骤中,系统升级服务器可以遍历所有的升级和回退任务,从而判断是否有任务已经超时。若超时,说明子系统的升级或回退操作花费了较长的时间,则执行步骤S22,若所有的升级和回退任务均未超时,说明子系统的升级或回退操作在较短的时间内完成,则执行步骤S23。[0256] 步骤S22、超时则修改升级任务状态,释放升级锁。[0257] 在该步骤中,由于子系统的升级或回退操作花费了较长的时间,则可以修改对应的子系统的升级任务状态,释放用于控制除当前的子系统之外的后续其他子系统不再执行升级过程的升级锁,使得其他子系统可以执行升级过程。[0258] 步骤S23、进入休眠状态等待下次扫描超时任务。[0259] 在该步骤中,由于所有的升级和回退任务均未超时,说明子系统的升级或回退操作在较短的时间内完成,则系统升级服务器中用于进行任务超时判断的线程可以进入休眠状态,以等待下一次扫描数据库,进行升级或回退操作的超时检测。[0260] 需要说明的是,本申请实施例提供的系统的升级方法,执行主体可以为系统的升级装置,或者该系统的升级装置中的用于执行加载系统的升级方法的控制模块。本申请实施例中以系统的升级装置执行加载系统的升级方法为例,说明本申请实施例提供的系统的升级方法。[0261] 参照图9,示出了本申请实施例提供的一种系统的升级装置的结构示意图,应用于系统升级服务器,如图9所示,该系统的升级装置具体可以包括如下模块:[0262] 建立模块401,用于提供web页面的访问链接,并在确定客户端通过所述访问链接访问所述web页面的情况下,建立与所述客户端之间的通信链路;[0263] 获取模块402,用于基于所述通信链路,获取所述客户端通过所述web页面上传的系统升级包;[0264] 切分模块403,用于响应于通过所述web页面接收到的一键升级指令,根据所述系统升级包中的升级配置信息,将所述系统升级包进行切分,得到系统中包含的子系统对应的子系统升级包;[0265] 第一发送模块404,用于将所述子系统升级包发送至对应的子系统,以供所述子系统根据所述子系统升级包进行升级,完成所述系统的升级。[0266] 可选的,所述装置还包括:[0267] 第一生成模块,用于生成所述子系统的升级任务信息,所述升级任务信息包含子系统升级状态,以及所述子系统升级状态对应的时间信息,所述子系统升级状态包括:正在升级状态、升级超时状态、待升级状态、升级失败状态和升级成功状态中的至少一种;[0268] 确定模块,用于在所述子系统升级状态为所述正在升级状态的情况下,根据所述子系统升级状态和所述子系统升级状态对应的时间信息,确定所述子系统处于所述正在升级状态的升级时长;[0269] 第二生成模块,用于在所述升级时长大于预设时长的情况下,生成针对所述子系统的预警信息,并将所述子系统升级状态修改为所述升级超时状态。[0270] 可选的,所述装置还包括:[0271] 第一接收模块,用于接收所述子系统发送的所述子系统的升级结果,所述升级结果包括升级成功或升级失败;[0272] 更新模块,用于根据所述升级结果更新所述子系统升级状态;[0273] 第二发送模块,用于在全部所述子系统中检测所述子系统升级状态为所述待升级状态的待升级子系统,将所述待升级子系统对应的子系统升级包发送至所述待升级子系统,以供所述待升级子系统进行升级。[0274] 可选的,所述装置包括:[0275] 第三生成模块,用于生成升级停止指令,所述升级停止指令用于控制除所述子系统之外的其他子系统停止升级;[0276] 第四生成模块,用于在所述升级时长大于预设时长的情况下,生成针对所述子系统的预警信息的步骤之后,所述方法还包括:[0277] 删除模块,用于删除所述升级停止指令。[0278] 可选的,所述系统升级服务器包括升级状态显示界面;[0279] 所述升级状态显示界面用于显示所述子系统升级状态、所述子系统升级状态对应的时间信息和所述预警信息。[0280] 可选的,所述系统升级包包括升级版本信息、升级文件信息和升级配置信息,所述切分模块,包括:[0281] 解析子模块,用于解析所述系统升级包,获取所述系统升级包中的升级版本信息、升级文件信息和升级配置信息;[0282] 切分子模块,用于在所述升级文件信息和所述升级配置信息与所述升级版本信息相互匹配的情况下,根据所述升级配置信息,将所述升级文件信息进行切分,确定所述升级文件信息中与所述子系统对应的子系统升级文件信息,得到包含所述升级版本信息、所述子系统升级文件信息和所述升级配置信息的子系统升级包。[0283] 可选的,所述解析子模块,包括:[0284] 计算单元,用于根据所述系统升级包,计算所述系统升级包对应的消息摘要算法标识;[0285] 确定单元,用于获取所述系统升级包对应的原始消息摘要算法标识,对比所述系统升级包对应的消息摘要算法标识和所述原始消息摘要算法标识,确定所述系统升级包是否发生丢包或错包;[0286] 解析单元,用于在所述系统升级包未发生丢包和错包的情况下,解析所述系统升级包,获取所述系统升级包中的升级版本信息、升级文件信息和升级配置信息。[0287] 参照图10,示出了本申请实施例提供的另一种系统的升级装置的结构示意图,应用于系统中的任一子系统,如图10所示,该系统的升级装置具体可以包括如下模块:[0288] 第二接收模块601,用于接收系统升级服务器发送的子系统升级包,所述子系统升级包为所述系统升级服务器响应于通过客户端的web页面接收到一键升级指令,根据系统升级包中的升级配置信息,将所述系统升级包进行切分后得到的所述子系统对应的升级包;[0289] 升级模块602,用于根据所述子系统升级包进行升级。[0290] 可选的,所述系统升级包中包括升级文件信息和升级配置信息,所述子系统升级包中包含所述升级配置信息和子系统升级文件信息,所述子系统升级文件信息为根据所述升级配置信息将所述升级文件信息进行切分后得到的与所述子系统对应的信息,所述升级模块,包括:[0291] 替换子模块,用于将所述子系统原有的待升级文件信息替换为所述子系统升级文件信息,将所述子系统原有的待升级配置信息替换为所述升级配置信息;[0292] 更新子模块,用于根据所述升级配置信息,对所述子系统对应的数据库进行结构和数据更新。[0293] 可选的,所述装置还包括:[0294] 生成子模块,用于根据所述子系统原有的待升级文件信息和待升级配置信息,生成备份信息;[0295] 检测子模块,用于检测所述子系统的升级结果,所述升级结果包括升级成功或升级失败;[0296] 发送子模块,用于将所述升级结果发送至所述系统升级服务器;[0297] 恢复子模块,用于在所述升级结果为升级失败的情况下,根据所述备份文件,恢复所述子系统原有的待升级文件信息和待升级配置信息。[0298] 综上所述,本申请实施例提供的系统的升级装置,运维人员在升级包含多个子系统的系统时,可以直接将系统升级包通过与系统升级服务器建立通信链路的客户端上的web页面进行上传,无需确定各个子系统对应的子系统服务器,并将系统升级包依次发送给各个子系统对应的子系统服务器,使得系统升级的步骤简洁,提高了系统的升级效率。[0299] 本申请实施例中的系统的升级装置可以是装置,也可以是终端中的部件、集成电路、或芯片。该装置可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、可穿戴设备、超级移动个人计算机(ultra‑mobilepersonalcomputer,UMPC)、上网本或者个人数字助理(personaldigitalassistant,PDA)等,非移动电子设备可以为服务器、网络附属存储器(NetworkAttachedStorage,NAS)、个人计算机(personalcomputer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。[0300] 本申请实施例中的系统的升级装置可以为具有操作系统的装置。该操作系统可以为安卓(Android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本申请实施例不作具体限定。[0301] 本申请实施例提供的系统的升级装置能够实现图2、图3、图6和图7的方法实施例中系统的升级方法实现的各个过程,为避免重复,这里不再赘述。[0302] 需要注意的是,本申请实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。[0303] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。[0304] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。[0305] 上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
专利地区:北京
专利申请日期:2021-04-30
专利公开日期:2024-07-26
专利公告号:CN113204360B