The invention provides a method for ensuring the ultimate consistency of transactions, including: detecting the application scenario belonging to the target transaction; when the target transaction belongs to the application scenario of synchronous invocation, parsing the exception type in the application scenario of synchronous invocation, determining the rollback operation corresponding to the exception type, and guaranteeing the target. When the target transaction belongs to the asynchronous invocation application scenario, the idempotency requirement and the retry mechanism in the asynchronous invocation application scenario are ensured to ensure the final consistency of the target transaction. The methods mentioned above set up rollback operations for synchronous application scenarios and idempotent or retry operations for asynchronous application scenarios to achieve consistency, without polling to ensure consistency. In high concurrency scenarios, too frequent timing polling operations are avoided, which requires high throughput and performance of the database. When the database can not meet the requirements, the processing efficiency is low.
【技术实现步骤摘要】
一种事务的最终一致性保障方法及系统
本专利技术涉及移动业务支撑
,尤其涉及一种事务的最终一致性保障方法及系统。
技术介绍
在分布式事务场景中,事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上,因此,为了保证分布式事务流程的有效进行,通过获取本地消息来实现事务的最终一致性,其中,本地消息是将分布式事务拆成一系列的本地事务,通过定时轮询的方式,检查数据库中的本地消息,当发现新数据时,则通知对方。专利技术人对现有的事务的最终一致性的保障方法进行研究发现,在高并发场景下,过于频繁的定时轮询操作,对数据库吞吐量和性能有较高的要求,当数据库不能满足要求时,导致处理效率低下。
技术实现思路
有鉴于此,本专利技术提供了一种事务的最终一致性保障方法及系统,用以解决现有技术中在高并发场景下,过于频繁的定时轮询操作,对数据库吞吐量和性能有较高的要求,当数据库不能满足要求时,导致处理效率低下的问题。具体方案如下:一种事务的最终一致性保障方法,包括:检测目标事务所属的应用场景;当所述目标事务属于同步调用应用场景时,解析所述同步调用应用场景中的异常类型,确定与所述异常类型对应的回滚操作,保障所述目标事务的最终一致性;当所述目标事务属于异步调用应用场景时,确保所述异步调用应用场景中幂等性要求和重试机制,保障所述目标事务的最终一致性。上述的方法,可选的,当所述目标事务属于同步调用应用场景时,解析所述同步调用应用场景中的异常类型,确定与所述异常类型对应的回滚操作,保障所述目标事务的最终一致性包括:当所述异常类型为被调方异常时,主调方反馈回滚失 ...
【技术保护点】
1.一种事务的最终一致性保障方法,其特征在于,包括:检测目标事务所属的应用场景;当所述目标事务属于同步调用应用场景时,解析所述同步调用应用场景中的异常类型,确定与所述异常类型对应的回滚操作,保障所述目标事务的最终一致性;当所述目标事务属于异步调用应用场景时,确保所述异步调用应用场景中幂等性要求和重试机制,保障所述目标事务的最终一致性。
【技术特征摘要】
1.一种事务的最终一致性保障方法,其特征在于,包括:检测目标事务所属的应用场景;当所述目标事务属于同步调用应用场景时,解析所述同步调用应用场景中的异常类型,确定与所述异常类型对应的回滚操作,保障所述目标事务的最终一致性;当所述目标事务属于异步调用应用场景时,确保所述异步调用应用场景中幂等性要求和重试机制,保障所述目标事务的最终一致性。2.根据权利要求1所述的方法,其特征在于,当所述目标事务属于同步调用应用场景时,解析所述同步调用应用场景中的异常类型,确定与所述异常类型对应的回滚操作,保障所述目标事务的最终一致性包括:当所述异常类型为被调方异常时,主调方反馈回滚失败;当所述异常类型为超时异常时,进行稽核回滚;当所述异常类型为多方业务中的至少一方失败时,对所述多方业务全部进行回滚。3.根据权利要求2所述的方法,其特征在于,还包括:将与所述异常类型对应的回滚结果,保存到对应的数据表中。4.根据权利要求1所述的方法,其特征在于,当所述目标事务属于异步调用应用场景时,确保所述异步调用应用场景中幂等性要求和重试机制,保障所述目标事务的最终一致性包括:扫描与所述异步调用应用场景对应的各个数据表,获取所述各个数据表中的异常信息和/或异常数据节点;判断与所述述异步调用应用场景对应的幂等表中是否存在与所述异常信息和/或异常数据节点对应的数据;若否,对与所述异常信息和/或异常数据节点对应的业务进行重做。5.根据权利要求4所述的方法,其特征在于,还包括:若是,获取所述数据,将所述数据传递给所述异步调用应用场景...
【专利技术属性】
技术研发人员:薛浩,
申请(专利权)人:亚信科技中国有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。