The embodiment of the invention provides an exception handling method, relating to the technical field of computer. The method includes: a first state will advance execution method of pending tasks and triggered the first state of the corresponding task is pending in the process; the process of implementation, the first state to modify the processing tasks according to the corresponding relationship between the execution method of process called the first state, and record the treatment the progress of processing tasks in the corresponding state; when processing a pending task process is abnormal, restart the process, the first state to be read and record the processing tasks to the task of handling progress; the process started from the implementation of trigger method is the first state, and from the processing schedule at the beginning of the pending task processing. The invention improves the effectiveness of the message platform, avoids the repeated transmission of the message, and can quickly deal with the abnormal situation.
【技术实现步骤摘要】
本专利技术涉及计算机
,特别是涉及一种异常处理方法和一种异常处理装置。
技术介绍
随着计算机技术及通信技术的发展,越来越多的平台或系统会利用消息平台发送消息,以达到增加访问量或者增强沟通等目的。例如,游戏平台利用消息平台向游戏用户发送消息,以避免用户流失;购物网站利用消息平台向网站注册用户发送消息,以增加用户消费额等。但是,以现有的技术,可能会出现消息平台在发送消息的过程中发生异常的情况,如调用信息发送接口失败导致消息发送失败,或者消息未能成功发送至对应的消息接收对象等情况。而且,对于上述的异常情况,目前常用的处理方式是不做处理,则会降低消息平台发送消息的有效性,或者是由人工判断异常情况是否需要重新执行,则会导致操作繁琐,且人工判断的过程也会浪费较多时间,或者是不经过人工判断直接重复发送全部消息,同样会导致耗时较长。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的异常处理方法和相应的异常处理装置。依据本专利技术的一个方面,提供了一种异常处理方法,包括:预先将待处理任务的第一状态与触发所述第一状态的执行方法进行对应;在待处理任务被各进程执行的过程中,根据各进程调用的执行方法与第一状态的对应关系修改待处理任务的第一状态,并在相应状态下记录所述待处理任务的处理进度;当处理一待处理任务的进程出现异常,重启所述进程后,读取记 ...
【技术保护点】
一种异常处理方法,包括:预先将待处理任务的第一状态与触发所述第一状态的执行方法进行对应;在待处理任务被各进程执行的过程中,根据各进程调用的执行方法与第一状态的对应关系修改待处理任务的第一状态,并在相应状态下记录所述待处理任务的处理进度;当处理一待处理任务的进程出现异常,重启所述进程后,读取记录的待处理任务的第一状态及待处理任务的处理进度;所述进程从触发所述第一状态的执行方法开始执行,并从所述处理进度处开始处理所述待处理任务。
【技术特征摘要】
1.一种异常处理方法,包括:
预先将待处理任务的第一状态与触发所述第一状态的执行方法进行对
应;
在待处理任务被各进程执行的过程中,根据各进程调用的执行方法与第
一状态的对应关系修改待处理任务的第一状态,并在相应状态下记录所述待
处理任务的处理进度;
当处理一待处理任务的进程出现异常,重启所述进程后,读取记录的待
处理任务的第一状态及待处理任务的处理进度;
所述进程从触发所述第一状态的执行方法开始执行,并从所述处理进度
处开始处理所述待处理任务。
2.根据权利要求1所述的方法,其特征在于,所述待处理任务包括发
送任务和发送任务的发送子任务;所述发送任务包括至少一种信息类型、平
台标识;
所述第一状态包括待执行状态、执行中状态和已完成状态。
3.根据权利要求2所述的方法,其特征在于,所述在待处理任务被各
进程执行的过程中,根据各进程调用的执行方法与第一状态的对应关系修改
待处理任务的第一状态,并在相应状态下记录所述待处理任务的处理进度的
步骤包括:
接收由客户端提交的发送任务并存入第一任务队列,并将所述发送任务
的第一状态更新为待执行状态;
由第一进程从第一任务队列中提取发送任务,并将所述发送任务的第一
状态更新为执行中状态;
由第一进程从根据所述发送任务中的平台标识,调用对于平台标识的待
发送对象获取接口,从相应的平台中获取各待发送对象;
由第一进程基于从相应的平台中获取各待发送对象,将所述发送任务拆
分为至少两个发送子任务,并将所述发送子任务放入第二任务队列;其中,
在发送任务的执行中状态下记录发送任务的处理进度,并将所述发送子任务
的第一状态更新为待处理状态;
由多个消费进程从所述第二任务队列中提取发送子任务,并将被提取的
发送子任务的第一状态更新为执行中状态;
每个消费进程调用与信息类型相应的发送接口,向各待发送对象发送待
发送信息;其中在发送子任务的执行中状态下记录发送子任务的进度;在发
送子任务的待发送信息发送完毕之后,将发送子任务的状态更新为已完成状
态,并所述发送任务的所有发送子任务全部为已完成状态后,将发送任务的
状态更新为已完成状态。
4.根据权利要求3所述的方法,其特征在于,
所述发送任务还包括:发送时间策略;
进一步的,所述由第一进程从第一任务队列中提取发送任务的步骤,包
括:
由第一进程扫描所述第一任务队列,提取发送时间策略达到预设条件的
发送任务。
5.根据权利要求3所述的方法,其特征在于,所述发送任务还包括:
业务标识和/或用户范围条件;
进一步的,在由第一进程从根据所述发送任务中的平台标识,调用对于
平台标识的待发送对象获取接口,从相应的平台中获取各待发送对象的步骤
之后,还包括:
在从相应的平台中获取的各待发送对象中,筛选业务标识下的待发送对
象和/或在所述用户范围条件之内的待发送对象。
6.根据权利要求5所述的方法,其特征在于...
【专利技术属性】
技术研发人员:孙小俊,吕本伟,
申请(专利权)人:北京奇虎科技有限公司,奇智软件北京有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。