异常处理方法、装置、服务器和存储介质制造方法及图纸

技术编号:21453716 阅读:27 留言:0更新日期:2019-06-26 04:42
本发明专利技术公开了一种异常处理方法、装置、服务器和存储介质。该方法包括:获取到处理请求时,确定处理请求对应的第一版本信息;启动至少一个第一子进程,并控制各第一子进程基于第一版本信息处理该处理请求;监测到存在至少一个处理异常的第一子进程时,关闭各异常第一子进程,启动与异常第一子进程数量相同的第二子进程,并确定该处理请求对应的第二版本信息;控制各第二子进程基于第二版本信息处理该处理请求;将各第二子进程记为新的第一子进程,所述第二版本信息记为新的第一版本信息,返回执行异常监测操作,直至获得处理请求的处理结果。本发明专利技术实施例提供的方法,可提高异常处理性能,增强系统稳定性。

【技术实现步骤摘要】
异常处理方法、装置、服务器和存储介质
本专利技术实施例涉及计算机应用
,尤其涉及一种异常处理方法、装置、服务器和存储介质。
技术介绍
随着数字化时代的到来,各种应用型系统渗入到人们生活的方方面面,人们对于应用型系统的热情极大的推动了系统的改进和版本更新,但对于改进或版本更新后的系统而言,可能更新后系统因某些原因导致兼容性差或运行异常的问题,且极容易因为这些异常造成应用系统的崩溃。针对上述问题,现有技术中常需要关闭应用型系统现有的运行版本,然后查找并重启动运行一个历史版本,但该种方式会导致应用型系统中的部分数据丢失,影响系统的稳定性,对业务造成损失。
技术实现思路
本专利技术提供一种异常处理方法、装置、服务器和存储介质,以实现系统异常的快速处理。第一方面,本专利技术实施例提供了一种异常处理方法,该方法包括:获取到处理请求时,确定所述处理请求对应的第一版本信息;启动至少一个第一子进程,并控制各所述第一子进程基于所述第一版本信息处理所述处理请求;监测到存在至少一个处理异常的第一子进程时,关闭各异常第一子进程,启动与异常第一子进程数量相同的第二子进程,并确定所述处理请求对应的第二版本信息;控制各所述第二子进程基于所述第二版本信息处理所述处理请求,将各所述第二子进程记为新的第一子进程,所述第二版本信息记为新的第一版本信息,返回执行异常监测操作,直至获得所述处理请求的处理结果。第二方面,本专利技术实施例还提供了一种异常处理装置,该装置包括:处理请求获取模块,用于获取到处理请求时,确定所述处理请求对应的第一版本信息;进程启动模块,用于启动至少一个第一子进程,并控制各所述第一子进程基于所述第一版本信息处理所述处理请求;异常监测模块,用于监测到存在至少一个处理异常的第一子进程时,关闭各异常第一子进程,启动与异常第一子进程数量相同的第二子进程,并确定所述处理请求对应的第二版本信息;第二进程处理模块,用于控制各所述第二子进程基于所述第二版本信息处理所述处理请求,将各所述第二子进程记为新的第一子进程,所述第二版本信息记为新的第一版本信息,返回执行异常监测操作,直至获得所述处理请求的处理结果。第三方面,本专利技术实施例还提供了一种服务器,该服务器包括:一个或多个处理器;存储器,用于存储一个或多个程序,当所述一个或多个程序被一个或多个处理器执行,使得所述一个或多个处理器实现如本专利技术实施例中任一所述的异常处理方法。第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本专利技术实施例中任一所述的异常处理方法。本专利技术实施例通过在获取到处理请求时,确定处理请求对应的第一版本信息,启动至少一个第一子进程,并控制第一子进程根据第一版本信息处理该处理请求,当检测到处理异常的第一子进程时,关闭异常第一子进程,启动与第一子进程数量相同的第二子进程,并确定对应处理请求的第二版本信息,控制第二子进程根据第二版本信息处理所述处理请求,并将第二子进程记为新的第一子进程,返回执行异常检测操作,直到该处理请求处理完毕;出现异常时系统无需停止处理请求的处理,可提高异常处理效率,增强系统的稳定性。附图说明图1时本专利技术实施例一提供的一种异常处理方法的流程图;图2是本专利技术实施例二提供的一种异常处理方法的流程图;图3是本专利技术实施例三提供的一种异常处理方法的功能框图;图4是本专利技术实施例三提供的一种异常处理装置的结构示意图;图5是本专利技术实施例四提供的一种服务器的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1时本专利技术实施例一提供的一种异常处理方法的流程图,本实施例可适用于应用系统异常处理的情况,该方法可以由异常处理装置来执行,该装置可以由软件和/或硬件的方式实现。参见图1,本实施例提供的一种异常处理方法包括:步骤101、获取到处理请求时,确定所述处理请求对应的第一版本信息。其中,处理请求可以是系统接收的用于处理数据的请求,可以包括数据存储请求和HTTP服务请求等,第一版本信息可以用于表征处理处理请求的程序代码的版本信息,可以包括程序代码的版本号、算法名称和编码语言等信息,例如python、C/C++和Java等。具体的,可以在获取到处理请求时,根据处理请求的内容确定需要的程序代码的版本号、算法名称和编程语言等信息,示例性的,可以预设一个默认配置表,默认配置表中包括处理请求和对应的版本信息,可以根据处理请求默认配置表征查找到对应的版本信息,将查找到的版本信息作为第一版本信息,还可以在处理请求内部封装有初始的版本信息,通过解析处理请求直接获取到版本信息,将获取到的版本信息作为第一版本信息。步骤102、启动至少一个第一子进程,并控制各所述第一子进程基于所述第一版本信息处理所述处理请求。其中,第一子进程可以是用于运行第一版本信息对应程序代码的子进程,不同第一子进程的内存可以相互独立,各第一子进程运行的程序代码互不影响。具体的,可以由接收处理请求的进程创建多个子进程,并控制第一子进程根据第一版本信息获取程序代码并处理接收的处理请求。步骤103、监测到存在至少一个处理异常的第一子进程时,关闭各异常第一子进程,启动与异常第一子进程数量相同的第二子进程,并确定所述处理请求对应的第二版本信息。其中,处理异常可以是指第一子进程在处理处理请求时发生的异常,可以包括进程崩溃、数据处理错误和产生异常信息等,第二子进程可以是用于接替出现处理异常的第一子进程继续处理处理请求的子进程,第二版本信息可以是与第一版本信息具有相同处理能力的代码程序对应的版本号、算法名称和编码语言等信息,第二版本信息可以与第一版本信息对应的处理请求相同,第二版本信息可以是第一版本信息对应程序代码的上一个稳定版本的信息。具体的,可以在检测到第一子进程发生进程崩溃、数据处理错误和产生异常信息等处理异常时,可以关闭出现处理异常的第一子进程,启动第二子进程,并根据处理请求获取第二版本信息。示例性的,可以由主进程使用IPC(inter-processcommunication,进程间通信)嵌套字创建与第一子进程的通信链接,当主进程监测不到第一子进程的通信链接时,对应的第一子进程处理异常,主进程可以关闭出现异常的第一子进程,并由主进程启动第二子进程,并建立通信链接,主进程还可以根据处理请求在包含处理请求和版本信息对应关系的算法版本管理表中查找对应处理请求的版本信息,将查找到的版本信息作为第二版本信息。步骤104、控制各所述第二子进程基于所述第二版本信息处理所述处理请求,将各所述第二子进程记为新的第一子进程,所述第二版本信息记为新的第一版本信息,返回执行异常监测操作,直至获得所述处理请求的处理结果。具体的,可以控制第二子进程根据第二版本信息获取对应的程序代码,并根据程序代码处理处理请求,可以将启动的第二子进程记为第一子进程,相应的可以将第二版本信息作为第一版本信息,例如可以在算法版本管理表中的第二版本信息进行标记作为第一版本信息,返回继续监测第一子进程,直到获取到所述处理请求的处理结果。本专利技术实施例的技术方案,本文档来自技高网...

【技术保护点】
1.一种异常处理方法,其特征在于,包括:获取到处理请求时,确定所述处理请求对应的第一版本信息;启动至少一个第一子进程,并控制各所述第一子进程基于所述第一版本信息处理所述处理请求;监测到存在至少一个处理异常的第一子进程时,关闭各异常第一子进程,启动与异常第一子进程数量相同的第二子进程,并确定所述处理请求对应的第二版本信息;控制各所述第二子进程基于所述第二版本信息处理所述处理请求,将各所述第二子进程记为新的第一子进程,所述第二版本信息记为新的第一版本信息,返回执行异常监测操作,直至获得所述处理请求的处理结果。

【技术特征摘要】
1.一种异常处理方法,其特征在于,包括:获取到处理请求时,确定所述处理请求对应的第一版本信息;启动至少一个第一子进程,并控制各所述第一子进程基于所述第一版本信息处理所述处理请求;监测到存在至少一个处理异常的第一子进程时,关闭各异常第一子进程,启动与异常第一子进程数量相同的第二子进程,并确定所述处理请求对应的第二版本信息;控制各所述第二子进程基于所述第二版本信息处理所述处理请求,将各所述第二子进程记为新的第一子进程,所述第二版本信息记为新的第一版本信息,返回执行异常监测操作,直至获得所述处理请求的处理结果。2.根据权利要求1所述的方法,其特征在于,所述获取到处理请求时,确定所述处理请求对应的第一版本信息,包括:获取预设的版本信息管理表;根据所述处理请求在预设的版本信息管理表中获取对应的第一版本信息;标记所述第一版本信息为已使用版本信息。3.根据权利要求1所述的方法,其特征在于,所述控制各所述第一子进程基于所述第一版本信息处理所述处理请求,包括:根据所述第一版本信息将对应的程序代码导入各所述第一子进程的内存;各所述第一子进程根据所述内存中的程序代码执行所述处理请求。4.根据权利要求1所述的方法,其特征在于,所述启动至少一个第一子进程包括:获取当前运行的处理芯片数目;启动与所述处理芯片数目相同的第一子进程。5.根据权利要求1所述的方法,其特征在于,所述监测到存在至少一个处理异常的第一子进程时,关闭各异常第一子进程,包括:当对所述第一子进程的处理信息获取失败和/或监测到所述第一子进程对所述处理请求的处理错误时,确定所述第一子进程异常,记为异常第一子进程;获取各所述异常第一子进程的进程编号;根据各所述进程编号,关闭对应的异常第一子...

【专利技术属性】
技术研发人员:戴君朱冠军于红建
申请(专利权)人:北京同城必应科技有限公司
类型:发明
国别省市:北京,11

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

1