【技术实现步骤摘要】
事务处理方法、装置、电子设备和可读存储介质
本公开涉及分布式
,更具体地,涉及事务处理方法、事务处理装置、电子设备和计算机可读存储介质。
技术介绍
随着互联网和计算机技术的快速发展,事务处理越来越频繁,事务是指访问并可能更新数据库中的各种数据项的程序执行单元,每个事务可能涉及多种操作。传统的事务处理方式在数据库性能和处理能力上都暴露出了瓶颈,为了提高事务处理的能力,柔性事务被提出,柔性事务与刚性事务相对,柔性事务的特性包括:基本可用、柔性状态、最终一致性。在实现本公开构思的过程中,专利技术人发现相关技术中至少存在如下问题:不同场景下对事务的要求不同,例如在一些场景中对事务的一致性和时效性要求较高,而在一些复杂场景中仅需达到事务的最终一致性即可。目前分布式系统实现柔性事务的方式大多是各自实现,大致分为几种常用模式:异步确保型、最大努力通知型、补偿型、两阶段型。其中,异步确保型和最大努力通知型可实现最终一致性,对于要求时效较高的业务系统并不适用;补偿型相比之下数据一致性要好一些,但是对应用的侵入性比较强;两 ...
【技术保护点】
1.一种事务处理方法,包括:/n接收目标事务包含的M个操作的操作请求,所述操作请求包括事务类型,其中,所述事务类型包括第一类事务和第二类事务,M为大于等于2的整数;/n从预设的N个事务处理模式中确定与所述事务类型匹配的目标处理模式,所述N个事务处理模式包括与所述第一类事务匹配的第一处理模式和与所述第二类事务匹配的第二处理模式,N为大于等于2的整数;以及/n基于所述目标处理模式和所述操作请求,执行所述M个操作,其中,在所述第一处理模式下,所述M个操作基于与数据库的同一连接和会话执行;在所述第二处理模式下,所述M个操作各自基于与数据库的独立连接和会话执行。/n
【技术特征摘要】
1.一种事务处理方法,包括:
接收目标事务包含的M个操作的操作请求,所述操作请求包括事务类型,其中,所述事务类型包括第一类事务和第二类事务,M为大于等于2的整数;
从预设的N个事务处理模式中确定与所述事务类型匹配的目标处理模式,所述N个事务处理模式包括与所述第一类事务匹配的第一处理模式和与所述第二类事务匹配的第二处理模式,N为大于等于2的整数;以及
基于所述目标处理模式和所述操作请求,执行所述M个操作,其中,在所述第一处理模式下,所述M个操作基于与数据库的同一连接和会话执行;在所述第二处理模式下,所述M个操作各自基于与数据库的独立连接和会话执行。
2.根据权利要求1所述的方法,其中:
在所述M个操作涉及同一数据库的情况下,所述目标事务属于第一类事务;在所述M个操作涉及至少两个数据库的情况下,所述目标事务属于第二类事务。
3.根据权利要求2所述的方法,其中,所述基于所述目标处理模式和所述操作请求,执行所述M个操作包括:
在第二处理模式下,若所述M个操作中的一个操作执行异常,对所述M个操作中已执行的操作进行回滚处理。
4.根据权利要求3所述的方法,其中:
在所述目标事务属于第二类事务的情况下,所述操作请求还包括事务标识信息、数据库标识信息和执行语句;
所述基于所述目标处理模式和所述操作请求,执行所述M个操作包括:
在所述第二处理模式下,记录所述事务标识信息、所述数据库标识信息和所述执行语句;
对所述执行语句进行反向转换处理,得到反向执行语句并记录所述反向执行语句;
若所述M个操作中的一个操作执行异常,基于所述反向执行语句对所述M个操作中已执行的操作进行回滚处理。
5.根据权利要求1所述的方法,其中,所述接收目标事务包含的M个操作的操作请求包括:
从M个应用端接收所述M个操作的操作请求,
其中,每个操作对应一个应用端。
6.根据权利要求5所述的方法,其中:
所述M个应用端包括第一应用端和第二应用端,所述第一应用端与第一操作相对应,所述第二应用端与第二操作相对应;<...
【专利技术属性】
技术研发人员:沈宇恒,胡凯乐,张宏根,
申请(专利权)人:中国工商银行股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。