业务状态管理方法与装置制造方法及图纸

技术编号:23485281 阅读:27 留言:0更新日期:2020-03-10 12:44
本公开提供一种业务状态管理方法与装置。业务状态管理方法包括:在调用外部系统处理业务请求时,获取所述外部系统对所述业务请求的处理结果;在判断所述处理结果为异常时,在业务状态表中记录所述业务请求的业务状态为异常状态,继续处理下一个业务请求;定时向所述外部系统获取多个所述异常状态对应的业务请求的最新处理结果;根据所述最新处理结果更新所述业务状态表。本公开提供的业务状态管理方法可以在缩短业务处理时间的同时保持系统间数据的一致性。

Business state management methods and devices

【技术实现步骤摘要】
业务状态管理方法与装置
本公开涉及计算机
,具体而言,涉及一种用于使系统间业务状态同步的业务状态管理方法与装置。
技术介绍
随着互联网的高速发展,对互联网各类业务的诉求越来越多元化和个性化,例如在电子商务平台中,交易、退款、物流、在线沟通等需求越来越具体、相关的处理流程越来越复杂。为了提高系统处理能力和维护便利度,往往使多个系统分别独立运行,每个系统处理特定种类的业务。但是随着系统独立,系统交互的场景就变得更加频繁,一个业务的实现往往需要多个系统之间的协同工作,在系统协同工作过程中保证系统之间的数据一致性是本领域需要解决的重要问题。在相关技术中,当一个业务请求需要系统A和系统B协调完成,即系统A为服务端对外提供服务,系统B为支撑端,系统B为系统A的提供服务时,整个业务流程需要系统A先处理该业务请求的部分业务数据后再调用系统B处理该业务请求的其他数据,并根据系统B的处理状态反馈来更新系统A中的业务状态。如果系统A调用系统B时返回业务处理异常,系统A将会回滚事务,重新处理该业务请求。由于跨系统交互过程中往往存在网络环境的影响,在流量高峰期网络环境比较差,即使系统B返回业务处理异常状态,也有可能是系统B在接受到请求后正常处理业务,但由于通信超时导致系统A接收到业务处理异常状态。此时,系统A中根据该异常状态回滚事务,系统B却保留了本次业务的处理数据,造成了数据不一致问题。在这样的情况下,业务处理周期延长,数据库处理能力下降,如果处理过程中对数据有锁定操作的话还会加大发生死锁的可能。因此,需要一种能够缩短业务处理周期,同时能够维护系统间数据一致性的业务状态管理方法。需要说明的是,在上述
技术介绍
部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现思路
本公开的目的在于提供一种业务状态管理方法与业务状态管理装置,用于至少在一定程度上克服由于相关技术的限制和缺陷而导致的系统间数据不一致问题。根据本公开实施例的第一方面,提供一种业务状态管理方法,包括:在调用外部系统处理业务请求时,获取所述外部系统对所述业务请求的处理结果;在判断所述处理结果为异常时,在业务状态表中记录所述业务请求的业务状态为异常状态,继续处理下一个业务请求;定时向所述外部系统获取多个所述异常状态对应的业务请求的最新处理结果;根据所述最新处理结果更新所述业务状态表。在本公开的一种示例性实施例中,所述定时向所述外部系统获取多个所述异常状态对应的业务请求的最新处理结果包括:根据多个所述异常状态对应的业务请求的业务种类获取每个业务种类对应的预设补偿周期;根据所述预设补偿周期向所述外部系统获取所述业务种类对应的异常状态的业务请求的最新处理结果。在本公开的一种示例性实施例中,所述根据所述最新处理结果更新所述业务状态表包括:如果所述最新处理结果是正常,在所述业务状态表中将所述最新处理结果对应的业务请求的状态更新为正常状态;如果所述最新处理结果是异常,对所述业务请求的已补偿次数加1。在本公开的一种示例性实施例中,所述根据所述最新处理结果更新所述业务状态表还包括:在一个业务请求的最新处理结果是异常时,获取所述业务请求对应的预设最大补偿次数、预设告警动作;如果所述已补偿次数等于所述预设最大次数,将所述业务请求的状态更新为告警状态并执行所述预设告警动作。在本公开的一种示例性实施例中,所述获取所述业务请求对应的预设最大补偿次数、预设告警动作包括:获取所述业务请求对应的业务种类的预设最大补偿次数、预设告警动作。在本公开的一种示例性实施例中,所述定时向所述外部系统获取多个所述异常状态对应的业务请求的最新处理结果包括:获取所述业务状态表中记录的业务状态为异常的业务请求的业务种类;通过工厂类获取所述业务种类对应的补偿逻辑,所述补偿逻辑包括预设补偿周期、已补偿次数、预设最大补偿次数、预设告警动作;根据所述补偿逻辑组装定时任务的请求参数;调用所述定时任务向所述外部系统获取所述定时任务对应业务种类中各业务请求的最新处理结果。在本公开的一种示例性实施例中,在判断所述处理结果为异常时,在业务状态表中记录所述业务请求的业务状态为异常状态包括:在判断所述处理结果为异常时,在所述业务状态表中生成所述业务请求的业务状态记录,记录所述业务请求的业务种类、预设最大补偿次数和预设告警动作,将已补偿次数记录为0,将业务状态记录为异常。根据本公开实施例的第二方面,提供一种业务状态管理装置,包括:同步状态获取模块,设置为在调用外部系统处理业务请求时,获取所述外部系统对所述业务请求的处理结果;同步状态更新模块,设置为在判断所述处理结果为异常时,在业务状态表中记录所述业务请求的业务状态为异常状态,继续处理下一个业务请求;异步状态获取模块,设置为定时向所述外部系统获取多个所述异常状态对应的业务请求的最新处理结果;异步状态更新模块,设置为根据所述最新处理结果更新所述业务状态表。根据本公开的第三方面,提供一种业务状态管理装置,包括:存储器;以及耦合到所属存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如上述任意一项所述的方法。根据本公开的第四方面,提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现如上述任意一项所述的业务状态管理方法。本公开实施例通过使用同步流程处理业务请求并记录外部系统返回的异常业务状态,使用定时异步流程统一向外部系统调取异常业务的最新处理结果并更新业务状态,可以在缩短业务处理时间的同时及时保持系统间的数据一致性。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本公开示例性实施例中业务状态管理方法的流程图。图2是本公开示例性实施例中业务状态管理方法的子流程图。图3是本公开示例性实施例中业务状态管理方法的子流程图。图4是本公开示例性实施例中业务状态管理方法的子流程图。图5是本公开示例性实施例中业务状态管理方法的子流程图。图6是本公开示例性实施例中业务状态管理方法的一个框图。图7是图6所示实施例中业务状态管理方法的同步流程图。图8是图6所示实施例中业务状态管理方法的异步流程图。图9是本公开一个示例性实施例中一种业务状态管理装置的方框图。图10是本公开一个示例性实施例中一种电子设备的方框图。图11是本公开一个示例性实施例中一种计算机可读存储介质的示意图。具体实施方式现在将参考附图更本文档来自技高网
...

【技术保护点】
1.一种业务状态管理方法,其特征在于,包括:/n在调用外部系统处理业务请求时,获取所述外部系统对所述业务请求的处理结果;/n在判断所述处理结果为异常时,在业务状态表中记录所述业务请求的业务状态为异常状态,继续处理下一个业务请求;/n定时向所述外部系统获取多个所述异常状态对应的业务请求的最新处理结果;/n根据所述最新处理结果更新所述业务状态表。/n

【技术特征摘要】
1.一种业务状态管理方法,其特征在于,包括:
在调用外部系统处理业务请求时,获取所述外部系统对所述业务请求的处理结果;
在判断所述处理结果为异常时,在业务状态表中记录所述业务请求的业务状态为异常状态,继续处理下一个业务请求;
定时向所述外部系统获取多个所述异常状态对应的业务请求的最新处理结果;
根据所述最新处理结果更新所述业务状态表。


2.如权利要求1所述的业务状态管理方法,其特征在于,所述定时向所述外部系统获取多个所述异常状态对应的业务请求的最新处理结果包括:
根据多个所述异常状态对应的业务请求的业务种类获取每个业务种类对应的预设补偿周期;
根据所述预设补偿周期向所述外部系统获取所述业务种类对应的异常状态的业务请求的最新处理结果。


3.如权利要求1或2述的业务状态管理方法,其特征在于,所述根据所述最新处理结果更新所述业务状态表包括:
如果所述最新处理结果是正常,在所述业务状态表中将所述最新处理结果对应的业务请求的状态更新为正常状态;
如果所述最新处理结果是异常,对所述业务请求的已补偿次数加1。


4.如权利要求3所述的业务状态管理方法,其特征在于,所述根据所述最新处理结果更新所述业务状态表还包括:
在一个业务请求的最新处理结果是异常时,获取所述业务请求对应的预设最大补偿次数、预设告警动作;
如果所述已补偿次数等于所述预设最大次数,将所述业务请求的状态更新为告警状态并执行所述预设告警动作。


5.如权利要求4所述的业务状态管理方法,其特征在于,所述获取所述业务请求对应的预设最大补偿次数、预设告警动作包括:
获取所述业务请求对应的业务种类的预设最大补偿次数、预设告警动作。


6.如权利要求1所述的业务状态管理方法,其...

【专利技术属性】
技术研发人员:邢淇翔任莉强黄栋
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京;11

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

1