消息下发方法、系统、设备及存储介质技术方案

技术编号:29464987 阅读:16 留言:0更新日期:2021-07-27 17:52
本发明专利技术公开了一种消息下发方法,包括:接收定时任务的触发操作;根据触发操作获取定时任务对应的待处理数据,并为待处理数据设置状态标识,状态标识用于记录待分发数据进行下发处理时的处理状态;获取预设的配置文件,根据配置文件对待处理数据进行组装,得到待分发消息;根据待分发消息的消息类型,将待分发消息存储至对应的消息队列中;获取待分发消息对应的下发渠道类型,并根据下发渠道类型将消息队列中的待分发消息推送给下发渠道类型对应的消息渠道;当接收到消息渠道反馈的包括有待分发消息下发失败的响应信息时,根据响应信息修改待分发消息对应的待分发数据的状态标识,以重新对待分发数据进行下发处理。本发明专利技术可以提高消息分发效率。

【技术实现步骤摘要】
消息下发方法、系统、设备及存储介质
本专利技术实施例涉及消息队列
,尤其涉及一种消息下发方法、系统、设备及可读存储介质。
技术介绍
随着近年来互联网行业的快速发展,微服务架构的应用越来越广泛。而在微服务架构中,业务系统为了支持扩展性,都遵从分布式架构,一个业务可能会拆分到不同的进程上,而不同的进程可能在不同的虚拟机或者物理机上运行,为了保持消息数据更新的一致性以让业务的正常进行,则在进程中引入了通信队列MQ,(MessageQueue,消息队列),例如:ActiveMQ,RabbitMQ、RocketMQ、kafka等。MQ作为一种消息中间件,用于将发送端的消息转发给消费端,以实现发送端与消费端之间的通信。目前,利用消息中间件MQ的消息传输方式可以包括:发送端成功将多个消息依次发送给MQ,以使MQ在接收到每个消息时将消息传入消息队列,然后按照消息队列依次将消息下发给消费端,以供消费端进行消费。但是现有的MQ消息下发不够完善,当发送的数据量过大时,数据发送过程中容易出现问题,无法及时对出现问题的数据进行处理,从而影响了消息发送效率。
技术实现思路
有鉴于此,本专利技术实施例的目的是提供一种消息下发方法、系统、设备及可读存储介质,有效的提高了消息分发效率。为实现上述目的,本专利技术实施例提供了一种消息下发方法,包括:接收定时任务的触发操作;根据所述触发操作获取所述定时任务对应的待处理数据,并为所述待处理数据设置状态标识;获取预设的配置文件,根据所述配置文件对所述待处理数据进行组装,得到待分发消息,并标记所述待处理数据的进行组装处理过程的状态标识;当所述待处理数据组装成功时,将所述待处理数据的状态标识标记为组装成功状态;根据所述待分发消息的状态标识与消息类型,将所述待分发消息存储至对应的消息队列中;获取所述待分发消息对应的下发渠道类型,并根据所述下发渠道类型将所述消息队列中的待分发消息推送给对应的消息渠道;接收所述消息渠道反馈的响应信息,根据所述响应信息标记所述待分发消息的状态标识;当识别到所述响应信息中包括有下发失败的状态标识时,修改所述待分发消息对应的所述待分发数据的状态标识,并根据修改后的状态标识重新触发定时任务对所述待分发消息进行下发处理,直至所述响应信息中包括有下发成功的状态标识,完成所述待分发消息进行下发处理。进一步地,所述接收定时任务的触发操作的步骤之前,所述方法还包括:预先设置定时任务的单次批处理数;从预设数据库中获取所述单次批处理数对应个数的待处理数据。进一步地,所述接收定时任务的触发操作的步骤之后,还包括:创建与所述定时任务的个数相对应数量的线程池,其中,每一个线程池与所述定时任务进行一一对应;在所述线程池中创建所述待分发数据对应的个数的线程,并通过所述线程对所述待处理数据进行组装处理,得到所述待分发消息;通过所述线程将所述待分发消息下发给所述待分发消息对应的消息渠道,以完成对所述待分发消息的下发处理。进一步地,所述接收定时任务的触发操作步骤之后,还包括:当所述定时任务触发时,生成任务记录日志,所述任务记录日志用于记录所述待处理数据在执行消息推送流程的处理状态和处理次数,所述处理状态通过对所述状态标识进行识别得到。进一步地,所述当识别到所述响应信息中包括有下发失败的状态标识时,修改所述待分发消息对应的所述待分发数据的状态标识,并根据修改后的状态标识重新触发定时任务对所述待分发消息进行下发处理,直至所述响应信息中包括有下发成功的状态标识,完成所述待分发消息进行下发处理的步骤,包括:当识别到所述响应信息为下发失败的状态标识时,根据所述响应信息在所述记录日志中更新所述待分发消息的处理次数;当所述处理次数处于预设阈值段时,将所述待分发消息的状态标识设置为补处理标识,并根据所述补处理标识对所述待分发消息对应的待分发数据进行补处理,所述补处理为重新对所述待分发数据进行下发处理。进一步地,所述当识别到所述响应信息中包括有下发失败的状态标识时,修改所述待分发消息对应的所述待分发数据的状态标识,并根据修改后的状态标识重新触发定时任务对所述待分发消息进行下发处理,直至所述响应信息中包括有下发成功的状态标识,完成所述待分发消息进行下发处理的步骤,包括:当识别到所述响应信息为下发失败的状态标识时,根据所述响应信息将所述待分发消息对应的待分发数据的状态标识进行状态翻转,并根据翻转后的状态标识重新触发对所述待分发消息对应的定时任务进行执行的操作。为实现上述目的,本专利技术实施例提供了一种消息下发系统,包括:接收模块,用于接收定时任务的触发操作;获取模块,用于根据所述触发操作获取所述定时任务对应的待处理数据,并为所述待处理数据设置状态标识;组装模块,用于获取预设的配置文件,根据所述配置文件对所述待处理数据进行组装,得到待分发消息,并标记所述待处理数据的进行组装处理过程的状态标识;第一标记模块,用于当所述待处理数据组装成功时,将所述待处理数据的状态标识标记为组装成功状态;存储模块,用于根据所述待分发消息的状态标识与消息类型,将所述待分发消息存储至对应的消息队列中;推送模块,用于获取所述待分发消息对应的下发渠道类型,并根据所述下发渠道类型将所述消息队列中的待分发消息推送给对应的消息渠道;第二标记模块,用于接收所述消息渠道反馈的响应信息,根据所述响应信息标记所述待分发消息的状态标识;修改模块,用于当识别到所述响应信息中包括有下发失败的状态标识时,修改所述待分发消息对应的所述待分发数据的状态标识,并根据修改后的状态标识重新触发定时任务对所述待分发消息进行下发处理,直至所述响应信息中包括有下发成功的状态标识,完成所述待分发消息进行下发处理。为实现上述目的,本专利技术实施例提供了一种计算机设备,所述计算机设备包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的消息下发方法的步骤。为实现上述目的,本专利技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如上所述的消息下发方法的步骤。本专利技术实施例提供的消息下发方法、系统、设备及可读存储介质,通过对定时任务进行触发操作,获取定时任务对应的待处理数据,为待处理数据设置状态标识,从而记录待处理数据每次处理后的状态;当待处理消息下发失败时,对待处理数据的状态标识进行修改,以重新对待分发数据进行下发处理,直达定时任务处理成功,并且根据状态标识可以了解定时任务处理过程中的问题,从而能有效避免上下游数据不一致。附图说明图1为本专利技术消息下发方法实施例一的流程图。图2为本专利技术消息下发系统实施例二的程序模块示意图。图3为本专利技术计算机设备实施例三的硬件本文档来自技高网...

【技术保护点】
1.一种消息下发方法,其特征在于,包括:/n接收定时任务的触发操作;/n根据所述触发操作获取所述定时任务对应的待处理数据,并为所述待处理数据设置状态标识;/n获取预设的配置文件,根据所述配置文件对所述待处理数据进行组装,得到待分发消息,并标记所述待处理数据的进行组装处理过程的状态标识;/n当所述待处理数据组装成功时,将所述待处理数据的状态标识标记为组装成功状态;/n根据所述待分发消息的状态标识与消息类型,将所述待分发消息存储至对应的消息队列中;/n获取所述待分发消息对应的下发渠道类型,并根据所述下发渠道类型将所述消息队列中的待分发消息推送给对应的消息渠道;/n接收所述消息渠道反馈的响应信息,根据所述响应信息标记所述待分发消息的状态标识;/n当识别到所述响应信息中包括有下发失败的状态标识时,修改所述待分发消息对应的所述待分发数据的状态标识,并根据修改后的状态标识重新触发定时任务对所述待分发消息进行下发处理,直至所述响应信息中包括有下发成功的状态标识,完成所述待分发消息进行下发处理。/n

【技术特征摘要】
1.一种消息下发方法,其特征在于,包括:
接收定时任务的触发操作;
根据所述触发操作获取所述定时任务对应的待处理数据,并为所述待处理数据设置状态标识;
获取预设的配置文件,根据所述配置文件对所述待处理数据进行组装,得到待分发消息,并标记所述待处理数据的进行组装处理过程的状态标识;
当所述待处理数据组装成功时,将所述待处理数据的状态标识标记为组装成功状态;
根据所述待分发消息的状态标识与消息类型,将所述待分发消息存储至对应的消息队列中;
获取所述待分发消息对应的下发渠道类型,并根据所述下发渠道类型将所述消息队列中的待分发消息推送给对应的消息渠道;
接收所述消息渠道反馈的响应信息,根据所述响应信息标记所述待分发消息的状态标识;
当识别到所述响应信息中包括有下发失败的状态标识时,修改所述待分发消息对应的所述待分发数据的状态标识,并根据修改后的状态标识重新触发定时任务对所述待分发消息进行下发处理,直至所述响应信息中包括有下发成功的状态标识,完成所述待分发消息进行下发处理。


2.根据权利要求1所述的消息下发方法,其特征在于,所述接收定时任务的触发操作的步骤之前,所述方法还包括:
预先设置定时任务的单次批处理数;
从预设数据库中获取所述单次批处理数对应个数的待处理数据。


3.根据权利要求1所述的消息下发方法,其特征在于,所述接收定时任务的触发操作的步骤之后,还包括:
创建与所述定时任务的个数相对应数量的线程池,其中,每一个线程池与所述定时任务进行一一对应;
在所述线程池中创建所述待分发数据对应的个数的线程,并通过所述线程对所述待处理数据进行组装处理,得到所述待分发消息;
通过所述线程将所述待分发消息下发给所述待分发消息对应的消息渠道,以完成对所述待分发消息的下发处理。


4.根据权利要求1所述的消息下发方法,其特征在于,所述接收定时任务的触发操作步骤之后,还包括:
当所述定时任务触发时,生成任务记录日志,所述任务记录日志用于记录所述待处理数据在执行消息推送流程的处理状态和处理次数,所述处理状态通过对所述状态标识进行识别得到。


5.根据权利要求4所述的息下发方法,其特征在于,所述当识别到所述响应信息中包括有下发失败的状态标识时,修改所述待分发消息对应的所述待分发数据的状态标识,并根据修改后的状态标识重新触发定时任务对所述待分发消息进行下发处理,直至所述响应信息中包括有下发成功的状态标识,完成所述待分发消息进行下发处理的步骤,包括:
当识别到所述响应信息为下发失败的状态标识时,根据所述响应信息在所述记录日志中更新所述待分发消息的处理次数;
当所述处理次数处于预设阈值段时,将所述待分发消息的状态标识设置为补处理标识,并根据所述补处理标...

【专利技术属性】
技术研发人员:寿珍珍
申请(专利权)人:平安消费金融有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1