[发明专利]实现最终一致性的方法、装置、计算机设备及存储介质有效
申请号: | 201911302109.X | 申请日: | 2019-12-17 |
公开(公告)号: | CN111127088B | 公开(公告)日: | 2023-06-27 |
发明(设计)人: | 李恺;何柄融;许煜彬;王伟 | 申请(专利权)人: | 深圳前海环融联易信息科技服务有限公司 |
主分类号: | G06Q30/0208 | 分类号: | G06Q30/0208;G06F16/23;G06F16/27 |
代理公司: | 深圳市精英专利事务所 44242 | 代理人: | 武志峰 |
地址: | 518000 广东省深圳市前海深港合作区前*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 实现 最终 一致性 方法 装置 计算机 设备 存储 介质 | ||
本发明公开了实现最终一致性的方法、装置、计算机设备及存储介质,涉及计算机技术领域。该方法包括:主系统服务接收请求并保存请求数据;所述主系统服务将所述请求发送至消息中间件,并通过所述消息中间件将所述请求发送至指定系统服务;所述指定系统服务接收到所述请求后对所述请求进行处理,并保存处理结果数据;通过一定时任务服务每隔一时间周期提取所有请求数据以及处理结果数据,并对提取的请求数据与处理结果数据进行比较。该方法可在支持调用多个系统服务的同时降低开发难度并提高处理效率,保证分布式事务的可用性、分区容忍性和最终一致性。
技术领域
本发明涉及计算机技术领域,尤其涉及实现最终一致性的方法、装置、计算机设备及存储介质。
背景技术
随着业务发展,单体应用越来越难以维护及无法快速敏捷开发,所以现在越来越多的互联网系统采用微服务设计系统。微服务倡导将复杂的单体应用拆分为若干个功能简单、松耦合的服务,这样可以降低开发难度、增强扩展性、便于敏捷开发。目前,由于系统微服务化后,即使是一个简单的功能,也需要通过调用多个服务并操作多个数据库来实现该功能,服务调用的分布式事务问题变的非常突出。为了解决服务调用的分布式事务问题,目前提供两种解决方案,一种是采用先直接调用指定系统服务,后调用当前系统的本地服务方法,但其只适用于只调用一个指定系统服务并且该调用未超时的情况;另一种是采用三段式提交的方法,将整个业务逻辑的每个分支显式的分成了Try(准备)、Confirm(提交)、Cancel(回滚)三个部分,Try部分完成业务的准备工作,Confirm部分完成业务的提交,Cancel部分完成事务的回滚,但其存在对应用的侵入性强、改造成本高以及实现难度大的问题。
因此服务调用的分布式事务问题至今仍没有很好的解决方法。
发明内容
本发明实施例提供了实现最终一致性的方法、装置、计算机设备及存储介质,旨在支持调用多个系统服务的同时降低开发难度并提高处理效率,保证分布式事务的可用性、分区容忍性和最终一致性。
第一方面,本发明实施例提供了一种实现分布式事务最终一致性的方法,其包括:
主系统服务接收请求并保存请求数据;
所述主系统服务将所述请求发送至消息中间件,并通过所述消息中间件将所述请求发送至指定系统服务;
所述指定系统服务接收到所述请求后对所述请求进行处理,并保存处理结果数据;
通过一定时任务服务每隔一时间周期提取所有请求数据以及处理结果数据,并对提取的请求数据与处理结果数据进行比较;若所述请求数据与所述处理结果数据不一致,则返回一处理消息至所述主系统服务;
所述主系统服务根据所述处理消息再次对所述请求进行处理,直至所述请求数据与当前处理结果数据一致。
第二方面,本发明实施例提供了一种实现分布式事务最终一致性的装置,其包括:
输入单元,用于主系统服务接收请求并保存请求数据;
发送单元,用于所述主系统服务将所述请求发送至消息中间件,并通过所述消息中间件将所述请求发送至指定系统服务;
第一处理单元,用于所述指定系统服务接收到所述请求后对所述请求进行处理,并保存处理结果数据;
提取单元,用于通过一定时任务服务每隔一时间周期提取所有请求数据以及处理结果数据,并对提取的请求数据与处理结果数据进行比较;若所述请求数据与所述处理结果数据不一致,则返回一处理消息至所述主系统服务;
第二处理单元,用于所述主系统服务根据所述处理消息再次对所述请求进行处理,直至所述请求数据与当前处理结果数据一致。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳前海环融联易信息科技服务有限公司,未经深圳前海环融联易信息科技服务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911302109.X/2.html,转载请声明来源钻瓜专利网。