CN109254840A - 业务补偿方法及装置、系统 - Google Patents
业务补偿方法及装置、系统 Download PDFInfo
- Publication number
- CN109254840A CN109254840A CN201810988646.3A CN201810988646A CN109254840A CN 109254840 A CN109254840 A CN 109254840A CN 201810988646 A CN201810988646 A CN 201810988646A CN 109254840 A CN109254840 A CN 109254840A
- Authority
- CN
- China
- Prior art keywords
- business
- generic task
- task
- generic
- execution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000012545 processing Methods 0.000 claims description 16
- 230000002349 favourable effect Effects 0.000 claims description 12
- 230000002159 abnormal effect Effects 0.000 claims description 9
- 230000008901 benefit Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 9
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000004080 punching Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3017—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3089—Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Hardware Redundancy (AREA)
Abstract
本申请公开了一种业务补偿方法及装置、系统。其中,该方法包括:获取业务请求;根据业务请求,确定业务请求所请求的业务;业务中包括第一类任务与第二类任务,其中第一类任务在第一系统中执行,第二类任务在第二系统中执行,并且第二类任务与第一类任务的执行顺序是不同的;对第一类任务与第二类任务的执行状态进行检测,若检测到第一类任务或第二类任务执行异常,则对业务进行补偿。解决了业务执行过程中涉及到的线程较多,模块之间调用关系较复杂的技术问题。
Description
技术领域
本申请涉及计算机领域,具体而言,涉及一种业务补偿方法及装置、系统。
背景技术
现有技术中,saga模型在处理多个业务时,需要在多个不同的业务模块中处理对应的业务,多个业务模块之间进行交互,例如:A模块负责业务数据的解析,B模块负责对各个业务进行排序,C模块记载各个任务的执行状态,D模块用于处理业务的数据,C模块调用E模块对执行异常的业务进行补偿,业务执行过程中涉及到的线程较多,模块之间调用关系较复杂。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种业务补偿方法及装置、系统,以至少解决业务执行过程中涉及到的线程较多,模块之间调用关系较复杂的技术问题。
根据本申请实施例的一个方面,提供了一种业务补偿方法,包括:获取业务请求;根据业务请求,确定业务请求所请求的业务;业务中包括第一类任务与第二类任务,其中第一类任务在第一系统中执行,第二类任务在第二系统中执行,并且第二类任务与第一类任务的执行顺序是不同的;对第一类任务与第二类任务的执行状态进行检测,若检测到第一类任务或第二类任务执行异常,则对业务进行补偿。
可选地,确定用于响应业务请求的业务之后,方法包括:记录业务的执行状态,第一执行状态至少包括以下之一:开始执行业务,业务执行结束,业务执行中,业务是否执行异常。
可选地,对业务进行补偿之前,方法还包括:从冲正轨迹表中获取第一类任务和/或第二类任务的第二执行状态,其中,冲正轨迹表用于记录第一类任务和/或第二类任务的名称,以及第一类任务和/或第二类任务的第二执行状态;依据第二执行状态确定是否对业务进行补偿,其中,在第一类任务或第二类任务的第二执行状态指示异常时,确定对业务进行补偿。
可选地,在第一类任务或第二类任务的第二执行状态指示异常时,确定对业务进行补偿包括:确定业务的最大冲正次数与已冲正次数;若已冲正次数小于最大冲正次数,则确定对业务进行补偿。
可选地,对业务进行补偿之后,方法还包括:按照预设的时间周期,定时对业务的补偿状态进行检测,其中,补偿状态包括:补偿成功和与补偿失败;在检测到补偿状态为补偿失败时,重新对业务进行补偿。
可选地,对业务进行补偿,包括:确定业务中的任务的补偿顺序,其中,任务为第一类任务的子任务或第二类任务的子任务;按照补偿顺序对业务中的任务进行补偿。
根据本申请实施例的另一个方面,提供了一种业务补偿系统,包括:第一系统,用于获取业务请求;根据业务请求,确定业务请求所请求的业务;业务中包括第一类任务与第二类任务,其中第一类任务在第一系统中执行,第二类任务在第二系统中执行,并且第二类任务与第一类任务的执行顺序是不同的;对第一类任务与第二类任务的执行状态进行检测,若检测到第一类任务或第二类任务执行异常,则对业务进行补偿。第二系统,用于执行第一类任务;第三系统,用于执行第二类任务。
根据本申请实施例的另一个方面,提供了一种业务补偿装置,包括:采集装置,用于获取业务请求;确定装置,用于根据业务请求,确定业务请求所请求的业务;业务中包括第一类任务与第二类任务,其中第一类任务在第一系统中执行,第二类任务在第二系统中执行,并且第二类任务与第一类任务的执行顺序是不同的;处理装置,用于对第一类任务与第二类任务的执行状态进行检测;用于若检测到第一类任务或第二类任务执行异常,则对业务进行补偿。
根据本申请实施例的再一个方面,提供了一种存储介质,该存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行以上的业务补偿方法。
根据本申请实施例的再一个方面,提供了一种处理器,该处理器用于运行程序,其中,程序运行时执行以上的业务补偿方法。
在本申请实施例中,通过获取业务请求;根据业务请求,确定业务请求所请求的业务;业务中包括第一类任务与第二类任务,其中第一类任务在第一系统中执行,第二类任务在第二系统中执行,并且第二类任务与第一类任务的执行顺序是不同的;对第一类任务与第二类任务的执行状态进行检测,若检测到第一类任务或第二类任务执行异常,则对业务进行补偿。从而实现了对与业务请求对应的业务的实时监测,并且根据检测结果确定是否对业务进行补偿,在执行业务时,涉及到的进程较少,涉及到的用于执行业务的模块较少的技术效果。进而解决了业务执行过程中涉及到的线程较多,模块之间调用关系较复杂的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种业务补偿方法的流程示意图;
图2是根据本申请实施例的一种业务补偿系统的结构示意图;
图3是根据本申请实施例的另一种业务补偿装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在描述业务的补偿模式之前,先定义两个概念:业务异常:业务逻辑产生错误的情况,比如账户余额不足、商品库存不足等。技术异常:非业务逻辑产生的异常,如网络连接异常、网络超时等。补偿模式使用一个额外的协调服务来协调各个需要保证一致性的服务,协调服务按顺序调用各个服务,如果某个服务调用异常(包括业务异常和技术异常)就取消之前所有已经调用成功的服务。当每个子事务T1,T2,…,Tn都有对应的补偿定义C1,C2,…,Cn-1,那么系统可以保证。子事务序列T1,T2,…,Tn得以完成(最佳情况)。或者序列T1,T2,…,Tj,Cj,…,C2,C1,0<j<n,得以完成。换句话说,通过上述定义的事务/补偿,保证满足以下业务规则:所有的业务都被执行成功,如果任何一个失败,都会被取消,如果最后一步失败,所有业务也将被取消。
冲正是为系统认为可能交易失败时采取的补救手法。即一笔交易在终端已经置为成功标志。但是发送到主机的账务交易包没有得到响应,即终端交易超时,所以不确定该笔交易是否在主机端也成功完成,为了确保用户的利益,终端重新向主机发送请求,请求取消该笔交易的流水,如果主机端已经交易成功,则回滚交易,否则不处理,然后将处理结果返回给终端。
如图1所示,图1是根据本申请实施例的一种业务补偿方法的流程示意图,该方法至少包括步骤S102-S106:
步骤S102,获取业务请求。
在一个可选的实施例中,用户办理业务时,涉及到的系统有两个,银行系统与第三方系统,银行系统包括本地系统与数据处理系统,其中,本地系统可以为柜台系统或用户的客户端系统;数据处理系统为银行处理业务请求的系统。第三方系统可以为中国移动公司的系统,或保险公司的系统。若用户通过银行柜台或银行的客户端购买太平洋保险公司的保险时,第三方系统则为太平洋保险公司的系统。用户办理业务时,本地系统获取到用户的业务请求,具体地,本地系统接收用户输入的业务请求,并将业务请求发送至数据处理系统。
步骤S104,根据业务请求,确定业务请求所请求的业务。
业务中包括第一类任务与第二类任务,其中第一类任务在第一系统中执行,第二类任务在第二系统中执行,并且第二类任务与第一类任务的执行顺序是不同的。
在一些实施例中,根据获取到的业务请求,确定业务请求所请求的业务,并确定用于执行业务的各个系统。例如:根据获取到的办理保险的业务请求,确定执行对应的业务的系统为银行数据处理系统与保险公司的系统。例如:第一类任务为银行对办理保险的业务的保险类别的选择、费用计算、以及确认缴费的任务,第二类任务为保险公司登记业务办理成功的任务。其中,第一类任务执行完毕之后,才执行第二类任务;也可以先执行第二类任务,再执行第一类任务,具体根据实际情况灵活确定。
在本申请的一个可选实施例中,对于上述第一类任务和第二类任务的执行顺序的确定方式包括但不限于以下方式:根据执行业务的实际顺序,执行第一类任务和第二类任务、根据自定义的执行顺序执行第一类任务和第二类任务。
在一些实施例中,在确定用于响应业务请求的业务之后,记录业务的执行状态,第一执行状态至少包括以下之一:开始执行业务,业务执行结束,业务执行中,业务是否执行异常。
上述第一执行状态指业务的执行状态。
在一个可选的实施例中,业务在第一系统中开始执行之前,记录第一执行状态为业务执行开始,业务在第一系统中开始执行,且并未执行结束时,记录业务执行状态为业务执行中,当业务在第二系统中执行结束之后,记录业务执行状态为业务执行结束。当业务在第一系统或第二系统的执行过程中,出现异常情况时,第一系统或第二系统则反馈业务执行异常,该异常情况可以为业务异常也可以为技术异常。
在一个可选的实施例中,可将第一执行状态存储在自身的中心流水表中,该中心流水表可用于日终对账。
第一系统或第二系统除了反馈第一执行状态之外,还反馈第一类任务或第二类任务的第二执行状态。本地系统中存储有冲正轨迹表,该冲正轨迹表用于记录第一类任务和/或第二类任务的名称,以及第一类任务和/或第二类任务的第二执行状态。第一系统在执行第一类任务时,需要将第一类任务的第二执行状态反馈给本地系统,该第二执行状态包括以下至少之一:开始执行第一类任务,第一类任务执行结束,第一类任务执行中,第一类任务是否执行异常。同理,第二系统在执行第二类任务时,也需要将第二类任务的第二执行状态反馈给本地系统。
步骤S106,对第一类任务与第二类任务的执行状态进行检测,若检测到第一类任务或第二类任务执行异常,则对业务进行补偿。
依据第二执行状态确定是否对业务进行补偿,其中,在第一类任务或第二类任务的第二执行状态指示异常时,确定对业务进行补偿。具体的,需确定业务的最大冲正次数与已冲正次数;若已冲正次数小于最大冲正次数,则确定对业务进行补偿。
其中,最大冲正次数是指预设的允许对对应业务冲正的最大次数。
在一个可选的实施例中,本地系统中,存储有待冲流水表,待冲流水表中存储有以下至少之一信息:业务是否冲正成功,业务的最大冲正次数,业务已冲正次数。
第一类任务与第二类任务可分别包括一个或多个子任务,即第一类任务包括一个或多个子任务,第二类任务包括一个或多个子任务。第一系统在执行第一类任务的各个子任务时,需将第一类任务的各个子任务的第三执行状态反馈给本地系统,第二系统在执行第二类任务的各个子任务时,需将第二类任务的各个子任务的第三执行状态反馈给本地系统。
该第三执行状态指第一类任务与第二类任务的中的各个子任务的执行状态,第三执行状态包括以下至少之一:开始执行某个子任务,该子任务执行结束,该子任务执行中,该子任务是否执行异常。
本地系统中存储有冲正轨迹表,还用于记录第一类任务的子任务和/或第二类任务的子任务的名称,以及第一类任务的子任务和/或第二类任务的子任务的第三执行状态。依据第三执行状态确定是否对业务进行补偿,其中,在第一类任务的子任务或第二类任务的子任务的第三执行状态指示异常时,确定对业务进行补偿。具体的,需确定业务的最大冲正次数与已冲正次数;若已冲正次数小于最大冲正次数,则确定对业务进行补偿。
对业务进行补偿时,需确定业务中的任务的补偿顺序,其中,任务为第一类任务的子任务或第二类任务的子任务;按照补偿顺序对业务中的任务进行补偿。对第一类任务的子任务或第二类任务的子任务进行补偿时任务的补偿顺序可以根据预设的任务补偿的优先级对任务进行补偿;另外,也可以选择性对任务进行补偿。
本地系统设定有定时器,对业务补偿之后,按照预设的时间周期,定时对业务的补偿状态进行检测,补偿状态包括:补偿成功和与补偿失败;在检测到补偿状态为补偿失败时,重新对业务进行补偿。
具体的,可对待冲轨迹表进行检测,根据已冲正次数,若已冲正次数小于最大冲正次数,则对对应的业务进行补偿。
上述中心流水表、冲正轨迹表与待冲轨迹表中都含有中心流水号,中心流水号用于对业务进行标记,每个中心流水号对应一个业务。
可以理解的是,在第一系统与第二系统在分别执行对应的第一类任务与第二类任务时,可使用任务码对不同的任务进行标记,对任务补偿时,使用不同的任务补偿码。
需要说明的是,步骤S102-S106的执行主体可以包括但不限于计算机设备,该计算机设备上可以运行本地系统,但不限于此。
在本申请实施例中,通过获取业务请求;根据业务请求,确定业务请求所请求的业务;业务中包括第一类任务与第二类任务,其中第一类任务在第一系统中执行,第二类任务在第二系统中执行,并且第二类任务与第一类任务的执行顺序是不同的;对第一类任务与第二类任务的执行状态进行检测,若检测到第一类任务或第二类任务执行异常,则对业务进行补偿。从而实现了对与业务请求对应的业务的实时监测,并且根据检测结果确定是否对业务进行补偿,在执行业务时,涉及到的进程较少,涉及到的用于执行业务的模块较少的技术效果。进而解决了业务执行过程中涉及到的线程较多,模块之间调用关系较复杂的技术问题。
图2是根据本申请实施例的一种业务补偿系统的结构示意图。如图2所示,该系统包括:第一系统22;第二系统24;第三系统26。其中:
第一系统22,用于获取业务请求;根据业务请求,确定业务请求所请求的业务;业务中包括第一类任务与第二类任务,其中第一类任务在第一系统中执行,第二类任务在第二系统中执行,并且第二类任务与第一类任务的执行顺序是不同的;对第一类任务与第二类任务的执行状态进行检测,若检测到第一类任务或第二类任务执行异常,则对业务进行补偿;
第一系统22还用于记录业务的执行状态,第一执行状态至少包括以下之一:开始执行业务,业务执行结束,业务执行中,业务是否执行异常。
第二系统22还用于存储冲正轨迹表、中心流水表、待冲流水表。其中,冲正轨迹表用于记录第一类任务和/或第二类任务的名称,以及第一类任务和/或第二类任务的第二执行状态;中心流水表用于存储第一执行状态;待冲流水表中存储有以下至少之一信息:业务是否冲正成功,业务的最大冲正次数,业务已冲正次数。
第二系统24,用于执行第一类任务;
第三系统26,用于执行第二类任务。
需要说明的是,图2所示实施例的优选实施方式可以参见图1所示实施例的相关描述,此处不再赘述。
图3是根据本申请实施例的一种业务补偿装置的结构示意图。如图3所示,该系统包括:采集模块32;确定模块34;处理模块36。其中:
采集模块32,用于获取业务请求;
确定模块34,用于根据业务请求,确定业务请求所请求的业务;业务中包括第一类任务与第二类任务,其中第一类任务在第一系统中执行,第二类任务在第二系统中执行,并且第二类任务与第一类任务的执行顺序是不同的;
处理模块36,用于对第一类任务与第二类任务的执行状态进行检测;用于若检测到第一类任务或第二类任务执行异常,则对业务进行补偿。
需要说明的是,图3所示实施例的优选实施方式可以参见图1所示实施例的相关描述,此处不再赘述。
本实施例中涉及到的上述各个模块既可以通过软件来实现,也可以通过相应地硬件来实现。例如,上述各个模块均可以处在处理器中,例如:上述各个模块均处于一个处理器中:一种处理器,包括:上述采集模块32、和上述确定模块34和上述处理模块36;上述各个模块分别处于一个对应的处理器中:上述获取模块32与确定模块34,位于第一处理器中,上述处理模块36位于第二处理器中。根据本申请实施例的再一个方面,提供了一种存储介质,该存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行以上的业务补偿方法。
根据本申请实施例的再一个方面,提供了一种处理器,该处理器用于运行程序,其中,程序运行时执行以上的业务补偿方法。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、任务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种业务补偿方法,其特征在于,所述方法包括:
获取业务请求;
根据所述业务请求,确定所述业务请求所请求的业务;所述业务中包括第一类任务与第二类任务,其中所述第一类任务在第一系统中执行,所述第二类任务在第二系统中执行,并且第二类任务与所述第一类任务的执行顺序是不同的;
对第一类任务与第二类任务的执行状态进行检测,若检测到所述第一类任务或第二类任务执行异常,则对所述业务进行补偿。
2.根据权利要求1所述的方法,其特征在于,确定用于响应所述业务请求的业务之后,所述方法包括:记录所述业务的执行状态,第一执行状态至少包括以下之一:开始执行业务,业务执行结束,业务执行中,业务是否执行异常。
3.根据权利要求2所述的方法,其特征在于,对所述业务进行补偿之前,所述方法还包括:
从冲正轨迹表中获取第一类任务和/或第二类任务的第二执行状态,其中,冲正轨迹表用于记录第一类任务和/或第二类任务的名称,以及第一类任务和/或第二类任务的第二执行状态;
依据所述第二执行状态确定是否对所述业务进行补偿,其中,在第一类任务或第二类任务的第二执行状态指示异常时,确定对所述业务进行补偿。
4.根据权利要求1所述的方法,其特征在于,在第一类任务或第二类任务的第二执行状态指示异常时,确定对所述业务进行补偿包括:
确定所述业务的最大冲正次数与已冲正次数;若所述已冲正次数小于所述最大冲正次数,则确定对所述业务进行补偿。
5.根据权利要求1所述的方法,其特征在于,对所述业务进行补偿之后,所述方法还包括:
按照预设的时间周期,定时对所述业务的补偿状态进行检测,其中,所述补偿状态包括:补偿成功和与补偿失败;
在检测到所述补偿状态为补偿失败时,重新对所述业务进行补偿。
6.根据权利要求1所述的方法,其特征在于,对所述业务进行补偿,包括:
确定所述业务中的任务的补偿顺序,其中,所述任务为所述第一类任务的子任务或第二类任务的子任务;按照所述补偿顺序对所述业务中的任务进行补偿。
7.一种业务补偿系统,其特征在于,包括:
第一系统,用于获取业务请求;根据所述业务请求,确定所述业务请求所请求的业务;所述业务中包括第一类任务与第二类任务,其中所述第一类任务在第一系统中执行,所述第二类任务在第二系统中执行,并且第二类任务与所述第一类任务的执行顺序是不同的;对第一类任务与第二类任务的执行状态进行检测,若检测到所述第一类任务或第二类任务执行异常,则对所述业务进行补偿;
第二系统,用于执行第一类任务;
第三系统,用于执行第二类任务。
8.一种业务补偿装置,其特征在于,包括:
采集模块,用于获取业务请求;
确定模块,用于根据所述业务请求,确定所述业务请求所请求的业务;所述业务中包括第一类任务与第二类任务,其中所述第一类任务在第一系统中执行,所述第二类任务在第二系统中执行,并且第二类任务与所述第一类任务的执行顺序是不同的;
处理模块,用于对第一类任务与第二类任务的执行状态进行检测;用于若检测到所述第一类任务或第二类任务执行异常,则对所述业务进行补偿。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至6中任意一项所述的业务补偿方法。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至6中任意一项所述的业务补偿方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810988646.3A CN109254840A (zh) | 2018-08-28 | 2018-08-28 | 业务补偿方法及装置、系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810988646.3A CN109254840A (zh) | 2018-08-28 | 2018-08-28 | 业务补偿方法及装置、系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109254840A true CN109254840A (zh) | 2019-01-22 |
Family
ID=65050429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810988646.3A Pending CN109254840A (zh) | 2018-08-28 | 2018-08-28 | 业务补偿方法及装置、系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109254840A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110288255A (zh) * | 2019-06-28 | 2019-09-27 | 深圳前海微众银行股份有限公司 | 一种分布式事务的流程保障方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102780753A (zh) * | 2011-11-08 | 2012-11-14 | 东南大学 | 一种基于约束规则的服务恢复方法 |
CN106341434A (zh) * | 2015-07-07 | 2017-01-18 | 腾讯科技(深圳)有限公司 | 业务处理方法及装置 |
CN107277085A (zh) * | 2016-04-06 | 2017-10-20 | 阿里巴巴集团控股有限公司 | 业务补偿方法及装置 |
CN107609793A (zh) * | 2017-10-09 | 2018-01-19 | 税友软件集团股份有限公司 | 一种处理生产交易系统异常状态的方法及装置 |
CN107819861A (zh) * | 2017-11-16 | 2018-03-20 | 中国银行股份有限公司 | 业务数据处理方法、装置及系统 |
-
2018
- 2018-08-28 CN CN201810988646.3A patent/CN109254840A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102780753A (zh) * | 2011-11-08 | 2012-11-14 | 东南大学 | 一种基于约束规则的服务恢复方法 |
CN106341434A (zh) * | 2015-07-07 | 2017-01-18 | 腾讯科技(深圳)有限公司 | 业务处理方法及装置 |
CN107277085A (zh) * | 2016-04-06 | 2017-10-20 | 阿里巴巴集团控股有限公司 | 业务补偿方法及装置 |
CN107609793A (zh) * | 2017-10-09 | 2018-01-19 | 税友软件集团股份有限公司 | 一种处理生产交易系统异常状态的方法及装置 |
CN107819861A (zh) * | 2017-11-16 | 2018-03-20 | 中国银行股份有限公司 | 业务数据处理方法、装置及系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110288255A (zh) * | 2019-06-28 | 2019-09-27 | 深圳前海微众银行股份有限公司 | 一种分布式事务的流程保障方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108427581A (zh) | 系统微服务化方法及终端设备 | |
CN109194495B (zh) | 服务器、报文处理方法和计算机可读存储介质 | |
WO2010008626A1 (en) | Adaptive implied spread matching | |
CN106097092A (zh) | 用于对账的数据处理方法和装置 | |
CN104077362A (zh) | 一种联机批量处理数据的系统和方法 | |
CN110704490A (zh) | 一种基于智能合约的业务数据处理方法和装置 | |
CN106096926B (zh) | 事件处理方法、装置、电子装置和存储介质 | |
CN107249182A (zh) | 一种短信发送方法及其装置、终端设备 | |
CN112446786A (zh) | 一种异常交易处理方法、装置、电子设备和可读存储介质 | |
CN110428240A (zh) | 一种可疑交易自动识别和处理方法、终端和服务器 | |
CN111415146A (zh) | 资源数据的处理方法、装置及设备 | |
CN107273192A (zh) | 一种产品交易的推进方法、服务器及系统 | |
CN109254840A (zh) | 业务补偿方法及装置、系统 | |
CN108540334A (zh) | 一种信息监控方法及装置 | |
CN109120706A (zh) | 业务调度方法及系统 | |
CN109064144A (zh) | 回单获取方法、装置、计算机设备和存储介质 | |
US8726235B2 (en) | Telecom business-oriented taxonomy for reusable services | |
CN106034148A (zh) | 一种快速信息交互方法、本地服务器、异地服务器及系统 | |
CN107818009A (zh) | 一种基于分布式事务的代理处理的方法 | |
CN101146113A (zh) | 面向网络服务性能的动态配置系统和方法 | |
CN110135190A (zh) | 数据管理方法、服务器及计算机存储介质 | |
CN109300055A (zh) | 投连险盈亏查询方法、装置、设备及可读存储介质 | |
CN115511024A (zh) | 一种多卡种即时制卡方法、系统、设备及介质 | |
CN108920278A (zh) | 资源分配方法及装置 | |
CN108363671A (zh) | 一种接口切换的方法、终端设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |