[发明专利]一种分布式事务处理方法、系统及相关设备在审
申请号: | 202110342631.1 | 申请日: | 2021-03-30 |
公开(公告)号: | CN115145715A | 公开(公告)日: | 2022-10-04 |
发明(设计)人: | 姜宇 | 申请(专利权)人: | 华为云计算技术有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/48;G06F16/27;G06F16/23 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 熊永强;李稷芳 |
地址: | 550025 贵州省贵阳市*** | 国省代码: | 贵州;52 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 事务处理 方法 系统 相关 设备 | ||
本申请实施例提供一种分布式事务处理方法、系统及相关设备,该方法用于包括锁服务器集群和事务协调器集群的分布式系统,事务协调器集群中的事务协调器用于控制分布式事务的处理过程,该处理过程包括对分布式事务涉及的数据库的锁操作,该方法包括:锁服务器集群中的第一锁服务器根据事务协调器列表,向事务协调器列表中的每个事务协调器发送锁数据的获取请求;若第一锁服务器获取到事务协调器列表中每个事务协调器发送的锁数据,第一锁服务器对事务协调器集群中的事务协调器发送的锁请求进行处理。通过执行上述方法,能够降低分布式事务处理过程中的性能开销,提高分布式事务处理效率。
技术领域
本申请涉及数据库技术领域,尤其涉及一种分布式事务处理方法、系统及相关设备。
背景技术
随着网络技术的快速发展,分布式系统逐渐普遍,分布式系统基于微服务架构,在不同的区域或者不同的节点部署多个服务,服务与服务之间可以通过远程协作完成一项事务操作。例如,当需要实现A银行的账户a向B银行的账户b转账100元转账操作时,需要调用第一服务将A银行的数据库中账户a的余额扣除100元,并调用第二服务将B银行数据库中账户b的余额增加100元。这种由分布式系统操作多个独立的数据库共同完成一个工作的事务称之为分布式事务,也称为全局事务。
分布式事务处理过程中,会对参与事务的数据进行加锁或者放锁操作,以防止并发的分布式事务对同一行数据进行修改时产生冲突。例如执行上述转账操作时,需要对账户a的数据与账户b的数据执行加锁操作,在转账结束之后执行放锁操作。因此在分布式事务中,对数据进行加锁或放锁是非常频繁操作。分布式事务中的锁数据可以存放在数据库中,为了防止锁数据的丢失,提高可靠性,需要对锁数据进行备份,将锁数据由主节点同步复制到备节点,在主节点出现故障时,从备节点中获取锁数据,但是对锁数据的同步复制会带来很大的性能开销。
发明内容
本申请实施例公开了一种分布式事务处理方法、系统及相关设备,能够降低分布式事务处理过程中的性能开销,提高分布式事务处理效率。
第一方面,本申请实施例提供一种分布式事务处理方法,该方法应用于分布式系统,该分布式系统包括锁服务器集群和事务协调器集群,事务协调器集群中的事务协调器用于控制分布式事务的处理过程,分布式事务的处理过程包括分布式事务涉及的数据库的锁操作,该方法包括:
锁服务器集群中的第一锁服务器根据事务协调器列表,向事务协调器列表中的每个事务协调器发送锁数据的获取请求;在第一锁服务器获取到事务协调器列表中每个事务协调器发送的锁数据的情况下,由第一锁服务器对事务协调器集群中的事务协调器发送的锁请求进行处理。
采用本申请实施例中的方法,通过在分布式系统中使用锁服务器集群处理分布式事务中的加锁请求、放锁请求等,锁服务器集群中的每个锁服务器能够根据事务协调器列表,向事务协调器列表中的锁服务器发送获取请求,获取事务协调器列表中每个事务协调器包括的锁数据,从而无需对锁数据进行备份,因此无需每次在执行加锁操作或者放锁操作后,更新备用节点中的锁数据,能够降低分布式事务处理过程中的性能消耗,同时由于不用每次加锁或者放锁后,在更新主节点与备用节点中的锁数据之后才向数据库服务器返回加锁结果或者放锁结果,因此能够降低分布式事务处理过程中的时延,降低事务锁的持有时间,提高事务处理效率。
在一种具体的实现方式中,事务协调器列表是由第二锁服务器同步至第一锁服务器的,事务协调器列表记录了进行锁操作活跃的事务协调器,第二锁服务器是第一锁服务器向事务协调器列表中的每个事务协调器发送锁数据的获取请求之前,对事务协调器集群中的事务协调器发送的锁请求进行处理的主锁服务器。
主锁服务器中维护有事务协调器列表,该事务协调器列表记录有主锁服务器所保存的锁数据所属的事务协调器,主锁服务器每次更新事务协调器列表之后,将更新后的事务协调器列表同步给备用锁服务器,以使锁服务器集群在主锁服务器出现故障时,新选举出的主锁服务器能够根据事务协调器列表从事务协调器中获取锁数据,快速恢复出现故障时主锁服务器中的全量锁数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为云计算技术有限公司,未经华为云计算技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110342631.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:芯片的切割方法
- 下一篇:一种信令消息处理方法、装置和系统