[发明专利]消息发送方法、装置、系统、设备及介质在审
| 申请号: | 202210179682.1 | 申请日: | 2022-02-25 |
| 公开(公告)号: | CN114564319A | 公开(公告)日: | 2022-05-31 |
| 发明(设计)人: | 马江;王顺达;刘尧 | 申请(专利权)人: | 京东科技控股股份有限公司 |
| 主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/46;G06F16/22;G06F16/23 |
| 代理公司: | 北京华夏泰和知识产权代理有限公司 11662 | 代理人: | 邓菊香 |
| 地址: | 100176 北京市北京经济*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 消息 发送 方法 装置 系统 设备 介质 | ||
本发明实施例涉及一种消息发送方法、装置、系统、设备及介质,该消息发送方法包括将事务触发的消息存储至数据库,在所述消息存储至数据库成功的情况下执行所述事务;在所述事务执行成功的情况下,将所述消息发送给消息中间件;以及查询所述数据库中未被成功发送的消息,将所述未被成功发送的消息重新发送给所述消息中间件。
技术领域
本发明涉及计算机技术领域,尤其涉及一种消息发送方法、装置、系统、设备及介质。
背景技术
随着消息中间件在计算机技术中的广泛应用和对消息的使用的不断加重,为保证事务一致性引入了事务消息,在本地事务执行成功的前提下允许消息中间件将消息发送给远程事务,而普通消息则不具备这种特性。
在实现本发明构思的过程中,发明人发现相关技术中至少存在如下技术问题:若要在现有的系统已经接入了普通消息的情况下实现事务消息,由于普通消息和事务消息不兼容,需要大规模改造消息的生成者和消费者的代码来实现,例如,相关技术中采用二阶段提交的方式可以实现事务消息,但需要大规模改造消息的生成者和消费者的代码来,代价非常大,接入成本高,且在网络中断等情况下会导致消息丢失,无法保证消息成功发送给消息队列,无法确保消息的可靠性投递。
发明内容
第一方面,本发明的实施例提供了一种消息发送方法,上述消息发送方法包括:将事务触发的消息存储至数据库,在上述消息存储至数据库成功的情况下执行上述事务;在上述事务执行成功的情况下,将上述消息发送给消息中间件;查询上述数据库中未被成功发送的消息,将上述未被成功发送的消息重新发送给上述消息中间件。
根据本发明的实施例,上述将事务触发的消息存储至数据库,在上述消息存储至数据库成功的情况下执行上述事务,包括:根据预设键值结构生成上述消息对应的键值对,其中,上述预设键值结构包含表征消息的状态信息的字段;将上述消息对应的键值对存储至上述数据库,将上述消息的状态信息设置为待执行并执行上述事务。
根据本发明的实施例,上述在上述事务执行成功的情况下,将上述消息发送给消息中间件,包括:在上述事务执行成功的情况下,将上述消息的状态信息更新为待发送;将状态信息为待发送的消息发送给消息中间件。
根据本发明的实施例,上述消息对应的键值对包含上述消息的主键,上述消息发送方法还包括:在上述数据库中创建主键数据集,并将上述消息的主键存储至上述主键数据集。
根据本发明的实施例,在将状态信息为待发送的消息发送给消息中间件之后,上述消息发送还包括:根据上述消息中间件返回的发送成功通知,确定上述消息被成功发送给消息中间件;将上述消息的状态信息更新为已发送;从上述主键数据集中删除状态信息为已发送的消息的主键。
根据本发明的实施例,上述查询上述数据库中未被成功发送的消息,将上述未被成功发送的消息重新发送给上述消息中间件,包括:查询上述主键数据集中存储的主键,将上述主键对应的消息确定为未被成功发送的消息;将上述未被成功发送的消息重新发送给上述消息中间件。
根据本发明的实施例,上述查询上述主键数据集中存储的主键包括:通过预设的定时机制定时查询上述主键数据集中存储的主键。
根据本发明的实施例,上述消息发送方法还包括:在上述消息存储至数据库失败的情况下或在上述事务执行失败的情况下,执行回滚操作。
第二方面,本发明的实施例提供了一种消息发送装置,上述装置包括:存储模块,用于将事务触发的消息存储至数据库,在上述消息存储至数据库成功的情况下执行上述事务;发送模块,用于在上述事务执行成功的情况下,将上述消息发送给消息中间件;重试模块,用于查询上述数据库中未被成功发送的消息,将上述未被成功发送的消息重新发送给上述消息中间件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于京东科技控股股份有限公司,未经京东科技控股股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210179682.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:园区智慧用电监测系统
- 下一篇:晶圆压膜机及托盘





