[发明专利]一种事务消息的处理方法和装置有效
| 申请号: | 201410571984.9 | 申请日: | 2014-10-23 |
| 公开(公告)号: | CN105592117B | 公开(公告)日: | 2019-01-25 |
| 发明(设计)人: | 蒋涛 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
| 主分类号: | H04L29/08 | 分类号: | H04L29/08;G06F9/54;G06F16/25 |
| 代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 赵娟 |
| 地址: | 英属开曼群岛大开*** | 国省代码: | 开曼群岛;KY |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 事务 消息 处理 方法 装置 | ||
本申请实施例提供了一种事务消息的处理方法和装置,所述的方法包括:生成事务消息;针对所述事务消息添加指定的处理状态标识;将所述事务消息发送至消息服务器;所述消息服务器用于依据所述处理状态标识将所述事务消息进行投递;若成功投递所述事务消息,则所述消息服务器用于删除所述事务消息。本申请实施例用以以较小的代价保证事务消息的发送结果和事务的业务处理逻辑的一致性。
技术领域
本申请涉及消息处理的技术领域,特别是涉及一种事务消息的处理方法和一种事务消息的处理装置。
背景技术
在分布式的网络环境下,业务系统之间需要进行消息的交互以完成关联的业务,为了降低业务系统之间的耦合性,通常采用异步可靠消息来进行消息的交互。异步可靠消息一般分为普通消息和事务消息。普通消息与发送结果不绑定。作为发送端的业务系统,在执行本地事务时,不依赖普通消息的发送结果,即使普通消息发送失败,也可以按照本地事务的业务处理逻辑继续执行相应的操作。由于不能保证普通消息的发送结果和本地事务的业务处理逻辑的一致性,因此,在对一致性要求严格的场景通常选用事务消息。事务消息与发送结果绑定。在执行本地事务时,依赖事务消息的发送结果,即事务消息发送结果和本地事务的业务处理逻辑保持一致。
在具体实现中,如果发送端发事务消息失败,则需要回滚本地事务,此外,如果在发送端本地事务执行失败,也需要回滚事务消息,以保证发送结果和本地事务的业务处理逻辑的一致性。目前事务消息一般采用两阶段提交的方式,并将事务消息的状态分为未决状态和已提交状态。事务消息两阶段提交的方式具体为:
第一阶段,在发送端进行本地事务的处理时操作业务数据库,并将本地事务于事务消息绑定,在本地事务执行过程中发送未决状态的事务消息到消息服务器,消息服务器将该事务消息持久化到消息数据库;
第二阶段,在发送端确定事务消息是提交或者回滚,此时会发送指示提交或回滚的消息到消息服务器,如果是指示回滚的消息,消息服务器会删除先前持久化到消息数据库的未决状态消息,如果是指示提交的消息,消息服务器会将事务消息的状态从未决状态更新为已提交状态,然后再进行投递。
如果在第二阶段的事务消息发送失败,消息服务器会回查发送端咨询事务消息的状态,消息服务器咨询该事务消息的状态后,决定对事务消息是要提交还是回滚。
由此可知,事务消息的两阶段提交方式的缺点主要有:
1、消息量倍增。由于事务消息是两阶段提交,而每一个阶段都需要发送一条事务消息,这意味着执行本地事务过程中的一次事务消息的发送动实际上需要发送用两次才能发送,从而使消息量增加了一倍,加重了网络负载、消息服务器负担以及消息数据库的事务消息数。
2、需要实现回查逻辑。如果第二阶段的事务消息未能成功发送到消息服务器,消息服务器需要回查发送端,以决定事务消息的提交或回滚。实现事务消息回查逻辑,实现较为复杂,且需要一定的代价。
因此,目前需要本领域技术人员迫切解决的一个技术问题就是:提出一种事务消息的处理机制,用以以较小的代价保证事务消息的发送结果和事务的业务处理逻辑的一致性。
申请内容
本申请实施例所要解决的技术问题是提供一种事务消息的处理方法,用以以较小的代价保证事务消息的发送结果和事务的业务处理逻辑的一致性。
相应的,本申请实施例还提供了一种事务消息的处理装置,用以保证上述方法的实现及应用。
为了解决上述问题,本申请公开了一种事务消息的处理方法,所述的方法包括:
生成事务消息;
针对所述事务消息添加指定的处理状态标识;
将所述事务消息发送至消息服务器;所述消息服务器用于依据所述处理状态标识将所述事务消息进行投递;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410571984.9/2.html,转载请声明来源钻瓜专利网。





