数据一致性处理方法、装置、服务器及存储介质制造方法及图纸

技术编号:35167092 阅读:20 留言:0更新日期:2022-10-12 17:30
本申请涉及数据处理,提供一种数据一致性处理方法、装置、服务器及存储介质,该方法包括:获取执行失败的目标事务的任务数据,并将目标事务的任务数据缓存至预设磁盘阵列;根据任务数据中的任务配置数据,从预设降级插件的降级容器中查找目标降级逻辑;基于目标降级逻辑对应的降级函数,调用预设磁盘阵列中缓存的任务数据对目标事务进行重试补偿;在检测到经过重试补偿的目标事务执行成功后,删除预设磁盘阵列中缓存的目标事务的任务数据。本申请旨在保证数据一致性的同时,还能提高系统并发能力和系统可用性。力和系统可用性。力和系统可用性。

【技术实现步骤摘要】
数据一致性处理方法、装置、服务器及存储介质


[0001]本申请涉及数据处理的
,尤其涉及一种数据一致性处理方法、装置、服务器及存储介质。

技术介绍

[0002]目前,业界主流从数据一致性方案主要包括以下三种:第一,可靠消息最终一致性(MQ最终一致性)方案,利用消息中间件完成事务的一致性,事务发起方执行完成本地事务后发出一条消息,事务参与方一定能够接收消息并处理事务成功。第二,简易可扩展的自治式分布式事务管理(Simple Extensible Autonomous Transaction Architecture,SEATA)框架,通过事务协调器(TC)、事务管理器(TM)和资源管理器(RM)实现数据强一致性。第三,基于TCC(try/confirm/cancel)机制的分布式事务管理框架,通过TCC三阶段提交事务,完成分布式事务的一致性。然而在系统要求保证数据一致性时,上述的数据一致性方案容易影响系统的并发能力,导致系统并发能力严重下降,系统可用性不高。

技术实现思路

[0003]本申请的主要目的在于提供一种数据一致性处理方法、装置、服务器及存储介质,旨在保证数据一致性的前提下,提高系统的并发能力和可用性。
[0004]第一方面,本申请提供一种数据一致性处理方法,包括:
[0005]获取执行失败的目标事务的任务数据,并将所述目标事务的任务数据缓存至预设磁盘阵列;
[0006]根据所述任务数据中的任务配置数据,从预设降级插件的降级容器中查找目标降级逻辑;
[0007]基于所述目标降级逻辑对应的降级函数,调用所述预设磁盘阵列中缓存的所述任务数据对所述目标事务进行重试补偿;
[0008]在检测到经过重试补偿的所述目标事务执行成功后,删除所述预设磁盘阵列中缓存的所述目标事务的任务数据。
[0009]第二方面,本申请还提供一种数据一致性处理装置,所述数据一致性处理装置包括:
[0010]获取模块,用于获取执行失败的目标事务的任务数据,并将所述目标事务的任务数据缓存至预设磁盘阵列;
[0011]查找模块,用于根据所述任务数据中的任务配置数据,从预设降级插件的降级容器中查找目标降级逻辑;
[0012]补偿模块,用于基于所述目标降级逻辑对应的降级函数,调用所述预设磁盘阵列中缓存的所述任务数据对所述目标事务进行重试补偿;
[0013]删除模块,用于在检测到经过重试补偿的所述目标事务执行成功后,删除所述预设磁盘阵列中缓存的所述目标事务的任务数据。
[0014]第三方面,本申请还提供一种服务器,所述服务器包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如上所述的数据一致性处理方法的步骤。
[0015]第四方面,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如上所述的数据一致性处理方法的步骤。
[0016]本申请提供一种数据一致性处理方法、装置、服务器及存储介质,本申请通过获取执行失败的目标事务的任务数据,并将目标事务的任务数据缓存至预设磁盘阵列;根据任务数据中的任务配置数据,从预设降级插件的降级容器中查找目标降级逻辑;基于目标降级逻辑对应的降级函数,调用预设磁盘阵列中缓存的任务数据对目标事务进行重试补偿;在检测到经过重试补偿的目标事务执行成功后,删除预设磁盘阵列中缓存的目标事务的任务数据。通过预设磁盘阵列中缓存的任务数据对目标事务进行重试补偿,使得系统中间环节执行失败的目标事务可以实现自动补偿,在保证数据一致性的同时,还能提高系统并发能力和系统可用性。
附图说明
[0017]为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018]图1为本申请实施例提供的一种数据一致性处理方法的步骤流程示意图;
[0019]图2为图1中的数据一致性处理方法的子步骤流程示意图;
[0020]图3为实施本实施例提供的数据一致性处理方法的一场景示意图;
[0021]图4为本申请实施例提供的一种数据一致性处理装置的示意性框图;
[0022]图5为图4中的数据一致性处理装置的子模块的示意性框图;
[0023]图6为本申请实施例提供的一种服务器的结构示意性框图。
[0024]本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
[0025]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0026]附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。另外,虽然在装置示意图中进行了功能模块的划分,但是在某些情况下,可以以不同于装置示意图中的模块划分。
[0027]本申请实施例提供一种数据一致性处理方法、装置、服务器及存储介质。其中,该数据一致性处理方法可应用于服务器中,该服务器可以为单台的服务器,也可以为由多台服务器组成的服务器集群。
[0028]下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
[0029]请参照图1,图1为本申请实施例提供的一种数据一致性处理方法的步骤流程示意图。
[0030]如图1所示,该数据一致性处理方法包括步骤S101至步骤S104。
[0031]步骤S101、获取执行失败的目标事务的任务数据,并将目标事务的任务数据缓存至预设磁盘阵列。
[0032]在分布式系统服务架构下,基于事件交互实现数据一致性。例如,某订单、发票、库存微服务,有一创建订单需求,在创建订单同时,要扣除商品的库存,并将发票开出,三者的数据需要保证最终一致。
[0033]示例性的,首先创建订单,将订单状态置为创建中,然后发送订单创建事件。库存系统和发票系统订阅了订单创建事件,库存系统在收到事件后,扣除库存,然后发送响应事件。发票系统在收到事件后,创建发票,然后发送响应事件。订单系统订阅了两者的响应事件,在收到库存系统和发票系统的响应事件后,根据事件消息内容得知两者都执行成功,将订单状态置为订单已创建。
[0034]因此在订单创建过程中,如果其中有一个环节出现事务执行失败而有没有及时进行数据同步,会导致数据不一致,就会引发数据混乱,导致漏单、库存错误、订单错误、无法支付、异常扣款、本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据一致性处理方法,其特征在于,包括:获取执行失败的目标事务的任务数据,并将所述目标事务的任务数据缓存至预设磁盘阵列;根据所述任务数据中的任务配置数据,从预设降级插件的降级容器中查找目标降级逻辑;基于所述目标降级逻辑对应的降级函数,调用所述预设磁盘阵列中缓存的所述任务数据对所述目标事务进行重试补偿;在检测到经过重试补偿的所述目标事务执行成功后,删除所述预设磁盘阵列中缓存的所述目标事务的任务数据。2.如权利要求1所述的数据一致性处理方法,其特征在于,所述基于所述目标降级逻辑对应的降级函数,调用所述预设磁盘阵列中缓存的所述任务数据对所述目标事务进行重试补偿,包括:调用预设的动态编译器对所述目标降级逻辑进行动态编译,生成所述目标降级逻辑对应的降级函数;运行所述降级函数,以查询所述预设磁盘阵列中缓存的所述任务数据;通过缓存的所述任务数据生成所述目标事务的补偿任务,并定时执行所述补偿任务。3.如权利要求2所述的数据一致性处理方法,其特征在于,所述通过缓存的所述任务数据生成所述目标事务的补偿任务,包括:根据所述任务数据中的第一任务标识,确定所述目标事务是立即执行还是调度执行,以获取第一补偿任务;根据所述任务数据中的第二任务标识,确定所述目标事务是以事务方式执行还是以非事务方式执行,以获取第二补偿任务;根据所述第一补偿任务和第二补偿任务,生成所述目标事务的补偿任务。4.如权利要求3所述的数据一致性处理方法,其特征在于,所述根据所述第一补偿任务和第二补偿任务,生成所述目标事务的补偿任务之前,还包括:若所述第一补偿方式为立即执行所述目标事务,则确定所述目标事务是同步执行还是异步执行,以获取第三补偿任务;若所述第一补偿方式为调度执行所述目标事务,则确定调度执行所述任务数据的数据服务器,并根据调度执行所述任务数据的数据服务器获取第三补偿任务;根据所述第一补偿任务、第二补偿任务和所述第三补偿任务,生成所述目标事务的补偿任务。5.如权利要求1

4中任一项所述的数据一致性处...

【专利技术属性】
技术研发人员:周国中
申请(专利权)人:中国平安财产保险股份有限公司
类型:发明
国别省市:

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

1