[发明专利]一种基于MQ PaaS的事务消息处理方法及装置有效

专利信息
申请号: 202210376772.X 申请日: 2022-04-12
公开(公告)号: CN114466071B 公开(公告)日: 2022-07-29
发明(设计)人: 易存道 申请(专利权)人: 北京宝兰德软件股份有限公司
主分类号: H04L67/566 分类号: H04L67/566;H04L67/562
代理公司: 北京路浩知识产权代理有限公司 11002 代理人: 张文玄
地址: 100020 *** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 mq paas 事务 消息 处理 方法 装置
【说明书】:

发明提供一种基于MQ PaaS的事务消息处理方法及装置,其中的事务消息处理方法包括:获取目标事务消息,目标事务消息包括消息生产者的分组信息;根据目标事务消息的本地事务执行结果,对目标事务消息进行处理;其中,若本地事务执行结果为不知情,则根据消息生产者的分组信息,回查本地事务执行结果,该方法解决了现有技术中无法在MQ PaaS平台架构下实现事务消息的缺陷,使MQ PaaS平台架构下实现事务消息成为可能。

技术领域

本发明涉及消息处理技术领域,尤其涉及一种基于MQ PaaS的事务消息处理方法及装置。

背景技术

目前通用的分布式事务实现方式包括两阶段提交(2 Phase Commit,简称2PC)、三阶段提交(3 Phase Commit,简称3PC)、两阶段补型事务(Try-Confirm-Concel,简称TCC)、事务消息和消息表,但对于MQ(Message Queue,简称消息队列)PaaS(Platform as aService,简称平台即服务)分布式消息平台而言,2PC、3PC和 TCC这些事务实现方式都过于复杂,不太适用,可行的是基于消息表和RocketMQ原生的事务实现方式。

对于基于消息表的事务实现方式,由于消息表基于关系型数据库,要求使用业务系统的数据库,还要求消息表与业务系统处在同一个事务中,所以,SDK(SoftwareDevelopment Kit,简称软件开发工具包)需要预先或者按照需求在业务数据库中创建消息表,而在业务数据库中创建消息表的操作对业务都有一定的侵入性,因此,对于分布式事务消息的实现而言,使用消息表的方式并不是首选,

对于RocketMQ原生的事务实现方式,事务实现的流程为:1)事务发起方首先发送准备消息到MQ;2)事务发起方在发送准备消息成功后执行本地事务;3) 根据本地事务执行结果返回commit(提交)或者是rollback(回滚);4) 如果返回rollback,MQ将删除该准备消息不进行发送;如果返回commit,MQ将会把这个消息发送给Consumer端;5)如果执行本地事务过程中,执行端挂掉,或者超时,MQ将会不停地询问同组的其他producer来获取状态;6)Consumer端的消费成功机制由MQ保证。但该事务实现方式在MQ PaaS平台架构下,由于SDK并不与Broker(缓存代理)直连,无法回查本地事务状态,不能完整地实现事务消息。

因此,如何解决现有技术中无法在MQ PaaS平台架构下实现事务消息的问题,是消息处理技术领域亟待解决的重要课题。

发明内容

本发明提供一种基于MQ PaaS的事务消息处理方法及装置,用以解决现有技术中无法在MQ PaaS平台架构下实现事务消息的缺陷,以实现MQ PaaS平台架构下的事务消息。

一方面,本发明提供一种基于MQ PaaS的事务消息处理方法,包括:获取目标事务消息,所述目标事务消息包括消息生产者的分组信息;根据所述目标事务消息的本地事务执行结果,对所述目标事务消息进行处理;其中,若所述本地事务执行结果为不知情,则根据所述消息生产者的分组信息,回查所述本地事务执行结果。

进一步地,所述若所述本地事务执行结果为不知情,则根据所述消息生产者的分组信息,回查所述本地事务执行结果,包括:根据所述消息生产者的分组信息,依次查询生产者代理;基于所述生产者代理的查询反馈信息,回查所述本地事务执行结果。

进一步地,所述基于所述生产者代理的查询反馈信息,回查所述本地事务执行结果,包括:若查询的生产者代理为目标生产者代理,则响应所述目标生产者的查询确认信息,回查所述本地事务执行结果;若查询的生产者代理为非目标生产者代理,则响应所述非目标生产者代理的查询否定信息,继续查询其他尚未被查询的生产者代理。

进一步地,所述基于MQ PaaS的事务消息处理方法还包括:若回查得到的所述本地事务执行结果为不知情,则重复回查操作;若回查次数达到预设回查次数时,所述本地事务执行结果仍为不知情,则结束所述回查操作,并删除所述目标事务消息。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京宝兰德软件股份有限公司,未经北京宝兰德软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202210376772.X/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top