[发明专利]一种消息传输及消费方法在审
| 申请号: | 202011338563.3 | 申请日: | 2020-11-25 |
| 公开(公告)号: | CN112463407A | 公开(公告)日: | 2021-03-09 |
| 发明(设计)人: | 桂红军 | 申请(专利权)人: | 北京神州数字科技有限公司 |
| 主分类号: | G06F9/54 | 分类号: | G06F9/54;H04L29/08 |
| 代理公司: | 北京世誉鑫诚专利代理有限公司 11368 | 代理人: | 任欣生 |
| 地址: | 100037 北京市西*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 消息 传输 消费 方法 | ||
本发明公开的消息传输方法,涉及消息安全技术领域,通过接收客户端或其他系统发送的业务请求并将执行该业务请求前、中、后过程中产生的消息写入数据库,根据该业务请求的执行情况,判断该业务请求是否执行成功,若该业务请求成功执行,则将该消息发送至消息队列服务端并通过消息队列服务端向客户端或其他系统传输该消息,保证了消息的可靠性。另外,本发明还公开了一种消息消费方法。
技术领域
本发明涉及消息安全技术领域,具体涉及一种消息传输及消费方法。
背景技术
随着分布式、微服务等技术在金融行业的应用,从由大而全的单体系统逐渐向小而专的微服务系统演化,将整个业务系统划分为客户管理、账务核心、结算系统、支付平台、总账系统、前端渠道等多个子系统,各个子系统独立完成自己的业务功能,拥有其垂直领域的数据库,各系统之间的消息交互通过分布式消息中间件来实现异步通信,不同消息中间件存在丢消息的可能。消息队列成为整个业务系统中最重要的环节,其可靠性是衡量整个业务系统的重要指标,消息队列的稳定性和可靠性是决定业务系统高效持续提供服务的保障,因此,如果提供一种能够保证消息队列的可靠性的方案为目前嗜需解决的问题。
发明内容
为解决现有技术的不足,本发明实施例提供了一种消息传输及消费方法。
第一方面,本发明实施例提供的消息传输方法包括以下步骤:
接收客户端或其他系统发送的业务请求并将执行所述业务请求前、中、后过程中产生的消息写入数据库;
根据所述业务请求的执行情况,判断所述业务请求是否执行成功;
若所述业务请求成功执行,则将所述消息发送至消息队列服务端并通过所述消息队列服务端向客户端或其他系统传输所述消息。
优选地,判断所述业务请求是否执行成功包括:
若所述业务请求未成功执行,则不再发送所述消息。
优选地,若所述业务请求成功执行,则将所述消息发送至消息队列服务端包括:
若所述消息发送失败,则根据预设的重试发送机制,重复发送所述消息,直至所述消息发送成功。
优选地,在根据所述业务请求的执行情况,在将执行所述业务请求前、中、后过程中产生的消息写入数据库之前,所述方法还包括:
为所述消息设置标识、流程编号、消息体、创建时间、状态、过期时间及队列编号,其中,所述消息状态包括待发送状态、准备发送状态、发送成功状态及发送失败状态。
优选地,在将所述消息发送至消息队列服务端之后,所述方法还包括:
实时判断是否存在待发送状态及准备发送状态的消息,若是,则定时获取所述消息。
优选地,在则获取所述消息之后,所述方法还包括:
判断所述消息的创建时间与当前时间之间的时间间隔是否大于预设的有效期限,若是,则将所述消息的状态设置为发送失败状态。
优选地,在通过所述消息队列服务端向客户端或其他系统传输所述消息之后,所述方法还包括:
根据所述消息的业务处理情况,实时更新所述消息的状态。
第二方面,本发明实施例提供的消息消费方法包括以下步骤:
获取业务系统发送的消息并判断所述消息是否已经被消费;
若消息已经被消费,则将所述消息写入消息重复表中;
若所述消息未被消费,则将所述消息写入消息消费表中,其中,所述消息消费表记录消息的唯一标识、接收时间、状态、更新时间、目的地。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京神州数字科技有限公司,未经北京神州数字科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011338563.3/2.html,转载请声明来源钻瓜专利网。





