[发明专利]基于企业微服务的分布式柔性事务处理方法和装置有效
申请号: | 202310233438.3 | 申请日: | 2023-03-13 |
公开(公告)号: | CN116069868B | 公开(公告)日: | 2023-06-09 |
发明(设计)人: | 夏维强;遆好贺;姜丽萍;许晨;李明亮;王落 | 申请(专利权)人: | 徐工汉云技术股份有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F9/46 |
代理公司: | 北京超凡宏宇专利代理事务所(特殊普通合伙) 11463 | 代理人: | 邓超 |
地址: | 221001 江苏省徐州*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 企业 微服 分布式 柔性 事务处理 方法 装置 | ||
本申请公开一种基于企业微服务的分布式柔性事务处理方法和装置,通过识别客户端的业务请求类型,将不同业务请求分别提交给相对应的前台编排服务,由对应的前台编排服务根据不同业务请求创建对多个微服务的数据写操作接口的多个调用逻辑,然后由事务中台服务基于多个调用逻辑在全局事务表中创建对应的全局事务,通知对应的前台编排服务分别执行全局事务,实时捕捉各个前台编排服务执行全局事务产生的异常事件,并触发事务中台服务分别执行与对应的全局事务相对应的补偿流程。本申请实施例在高并发的长事务的应用场景下,提高了基于微服务架构的企业软件系统中执行分布式柔性事务的容错性能,从而确保各微服务的数据库之间的数据最终一致性。
技术领域
本申请涉及计算机信息技术领域,具体而言,涉及一种基于企业微服务的分布式柔性事务处理方法和装置。
背景技术
在基于微服务架构的企业软件系统中,通常会涉及分布式事务的业务处理场景。分布式事务是指完成某一个业务功能需要跨分布式部署的多个微服务和多个数据库。分布式刚性事务是指要求分布式事务像每个数据库的本地事务一样的数据强一致性,而分布式柔性事务不要求分布式事务像每个数据库的本地事务一样的数据强一致性,而是要求各数据库之间数据的最终一致性。在企业微服务架构中实现分布式柔性事务的处理的一种方案是采用Saga模型,Saga模型把一个分布式事务拆分为多个本地事务,每个本地事务都有相应的执行模块和补偿模块,当任意一个本地事务出错时,可以通过调用相关的补偿模块回滚之前的事务处理,达到事务数据的最终一致性。Saga模型支持协同式的事务协调和编排式的事务协调,协同式的事务协调是把事务的执行顺序分布在各微服务,各微服务通过事件交换实现事务协调,编排式的事务协调是由中心化的事务编排器负责协调各微服务执行本地事务。由于协同式的Saga模型对于长事务(即包含的本地事务较多)的应用场景下性能较为低下,编排式的Saga模型更适用长事务的应用场景。
然而,基于微服务架构的企业软件系统中可能涉及多种不同业务流程的软件应用,这些软件应用通常可以共享一组企业微服务,因此,在基于传统的编排式Saga模型采用中心化的事务编排器负责协调处理这些软件应用中跨多个微服务的分布式柔性事务时,在高并发的长事务的应用场景下,一旦中心化的事务编排器出现故障或者性能瓶颈,将会导致整个分布式柔性事务的执行出现数据异常,从而导致各微服务的数据库之间出现数据最终不一致的问题。因此,亟需一种改进的技术方案来解决上述问题。
发明内容
有鉴于此,本申请提出一种基于企业微服务的分布式柔性事务处理方法和装置,用于提高基于微服务架构的企业软件系统中执行分布式柔性事务的容错性能,从而确保各微服务的数据库之间的数据最终一致性。
第一方面,本申请提出一种基于企业微服务的分布式柔性事务处理方法,包括:
识别客户端的业务请求类型是第一业务请求还是第二业务请求,以将所述第一业务请求提交给第一前台编排服务,将所述第二业务请求提交给第二前台编排服务;
所述第一前台编排服务根据所述第一业务请求创建对多个微服务的数据写操作接口的第一调用逻辑,所述第二前台编排服务根据所述第二业务请求创建对所述多个微服务的数据写操作接口的不同于所述第一调用逻辑的第二调用逻辑,并将所述第一调用逻辑和第二调用逻辑通知事务中台服务;
所述事务中台服务基于所述第一调用逻辑和第二调用逻辑在全局事务表中创建第一全局事务和第二全局事务,并通知所述第一前台编排服务和第二前台编排服务分别执行所述第一全局事务和第二全局事务;
实时捕捉所述第一前台编排服务执行所述第一全局事务产生的第一异常事件和所述第二前台编排服务执行所述第二全局事务中产生的第二异常事件,并根据所述第一异常事件和第二异常事件触发所述事务中台服务分别执行与所述第一全局事务和第二全局事务对应的第一补偿流程和第二补偿流程。
在一些实施方式中,所述将所述第一调用逻辑和第二调用逻辑通知事务中台服务,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于徐工汉云技术股份有限公司,未经徐工汉云技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310233438.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电池及电池制备方法
- 下一篇:光学影像镜片组