[发明专利]消息发送方法、装置、计算机设备和存储介质有效
申请号: | 202010740520.1 | 申请日: | 2020-07-28 |
公开(公告)号: | CN111835467B | 公开(公告)日: | 2022-03-29 |
发明(设计)人: | 周航 | 申请(专利权)人: | 中国平安财产保险股份有限公司 |
主分类号: | H04L1/16 | 分类号: | H04L1/16;H04L1/18 |
代理公司: | 北京英特普罗知识产权代理有限公司 11015 | 代理人: | 程超 |
地址: | 518048 广东省深圳市福田区益田路*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 消息 发送 方法 装置 计算机 设备 存储 介质 | ||
本发明提供一种消息发送方法,包括:在预设的消息记录表中记录待发送消息的关键参数和消息类型;向目标下游业务系统发送待发送消息,待发送消息中携带上游系统本次消息发送时间和上游系统前次消息发送时间;当接收到目标下游业务系统返回的消息重发请求,消息重发请求包含下游系统前次消息接收时间时,查找下游系统前次消息接收时间到上游系统本次消息发送时间之间向目标下游业务系统发送的消息,而后判断查找到消息的消息状态是否为失败,若否,则将查找到的消息作为新待发送消息并返回向目标下游业务系统发送待发送消息的步骤,同时将各新待发送消息的历史发送次数加1。本发明能够在不影响上游业务系统进程性能的前提下确认消息是否丢失。
技术领域
本发明涉及消息传输技术领域,尤其涉及一种消息发送方法、装置、计算机设备和存储介质。
背景技术
当两个关联系统交互时,为了解耦或是避免消息洪峰,上游业务系统会有很多需要通过MQ(Message Queue,消息队列)向下游业务系统发送消息的场景,但是系统间通过MQ进行交互并不是100%可靠的,不管是activeMq、rabbitMq或是rocketMq、Kafka,都无法保证消息可以100%发送成功。目前,一般通过下游业务系统向上游业务系统发送回执来确认消息是否发送成功。当接收消息的下游业务系统较多时,较多的回执会影响上游业务系统的进程性能。
此外,当消息发送失败时,对于上游业务系统就很有必要支持消息重发。传统方案一般是在捕获到异常消息后直接重新发送消息,重试多次,如果多次重试均失败,那么该消息便被丢弃不再重发,等下游业务系统发现问题再通知上游业务系统,上游业务系统再通知人工构造消息,并将人工构造的消息重新发送至下游业务系统,由于此种方案需要人工构造消息,耗时较长且存在人为失误的情况。对此,现有技术提供了另外一种方案,当某消息经多次重发仍失败后,将该消息存入缓存系统,再利用定时器,每隔一段时间,定时从缓存系统中取出缓存消息重新进行发送,由于此种方案需要将每条发送失败消息的完整内容进行缓存,因此存储成本较高。
发明内容
针对上述现有技术的不足,本发明提供一种消息发送方法、装置、计算机设备和存储介质,能够在不影响上游业务系统进程性能的前提下确认消息是否丢失,同时在消息发送失败时无需对消息进行缓存,节约存储成本。
为了实现上述目的,本发明提供一种消息发送方法,包括:
在预设的消息记录表中记录待发送消息的关键参数和消息类型;
向目标下游业务系统发送所述待发送消息,其中,在所述待发送消息中携带上游系统本次消息发送时间和上游系统前次消息发送时间;
当接收到所述目标下游业务系统返回的消息重发请求,所述消息重发请求包含下游系统前次消息接收时间时,查找所述下游系统前次消息接收时间到上游系统本次消息发送时间之间向所述目标下游业务系统发送的消息,而后判断查找到消息的消息状态是否为失败,若否,则将查找到的消息作为新待发送消息并返回所述向目标下游业务系统发送所述待发送消息的步骤,同时将各所述新待发送消息的历史发送次数加1;
当某新待发送消息的历史发送次数达到预设的第一重发次数阈值时,将所述新待发送消息的消息状态设置为失败,同时丢弃所述新待发送消息;
定时进行任务调度,以从所述消息记录表中,获取失败消息状态所对应的关键参数和消息类型,并根据获取到的关键参数和消息类型,从预设的业务数据库中查找生成对应目标消息所需的必要参数,而后按照预设的协议规则组装所述必要参数得到所述目标消息,并向所述目标下游业务系统发送所述目标消息。
在本发明一个实施例中,所述在预设的消息记录表中记录待发送消息的关键参数和消息类型之前,还包括:
建立所述消息记录表,以记录消息的关键参数、消息类型、消息状态、历史发送次数和发送时间。
在本发明一个实施例中,所述目标消息中携带回执请求;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国平安财产保险股份有限公司,未经中国平安财产保险股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010740520.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用户统计方法及系统
- 下一篇:一种再生骨料破碎筛分清洗装置