异步消息发送的处理方法、装置、存储介质及电子设备制造方法及图纸

技术编号:36527067 阅读:39 留言:0更新日期:2023-02-01 16:06
申请提供了一种异步消息发送的处理方法、装置、存储介质及电子设备,涉及分布式技术领域、数据处理技术领域以及金融领域。其中,该方法包括:发送异步消息;当所述异步消息发送成功时,回调发送成功回调函数;当所述异步消息发送失败时,回调发送失败回调函数;当回调发送失败回调函数时,将所述异步消息对应的数据记录在发送失败表中,然后调用传入失败处理回调接口的实现类,所述传入失败处理回调接口的实现类用于在所述异步消息发送失败时实现预设功能。利用该方法,可保证系统数据的一致性,使用简单方便,复用性强。复用性强。复用性强。

【技术实现步骤摘要】
异步消息发送的处理方法、装置、存储介质及电子设备


[0001]本申请涉及分布式系统
,尤其涉及一种异步消息发送的处理方法、装置、存储介质及电子设备。

技术介绍

[0002]在分布式系统中,消息队列都是一个至关重要的组件,其提供了异步处理机制。随着异步消息应用场景愈加广泛,异步消息发送数据可靠性显得尤为重要。
[0003]对于核心系统与众多的外部系统交互的场景,其中很多消息通过消息中间件通讯,使用异步消息的场景不同,要求也不尽相同,有些场景下异步消息发送失败可以忽略不管,有些必须有特别的兜底处理,以确保系统数据的一致性。目前各应用发送异步消息的回调针对不同的场景时,需要进行不同的编程处理,代码量大且多冗余,实用性较差。

技术实现思路

[0004]为了解决现有技术存在的上述技术问题,本申请提供了一种异步消息发送的处理方法、装置、存储介质及电子设备,可保证系统数据的一致性,使用简单方便,复用性强。
[0005]第一方面,本申请提供了一种异步消息发送的处理方法,该方法包括以下步骤:发送异步消息;当所述异步消息发送成功时,回调发送成功回调函数;当所述异步消息发送失败时,回调发送失败回调函数;当回调发送失败回调函数时,将所述异步消息对应的数据记录在发送失败表中,然后调用传入失败处理回调接口的实现类,所述传入失败处理回调接口的实现类用于在所述异步消息发送失败时实现预设功能。
[0006]利用本申请提供的方法,针对异步消息传送过程中可能出现发送失败导致的消息丢失,提出来一种异步消息发送的补偿机制,对失败记录做定制化处理,对于发送失败回调函数下增加传入失败处理回调接口的实现类,供应用模块实现其接口并增加失败处理逻辑,在获取发送失败返回值时,回调其实现类以保证系统数据一致性,传入失败处理回调接口的实现类的功能可以进行定制,因此使用简单方便,复用性强。
[0007]在一种可能的实现方式中,所述预设功能包括以下中的至少一项:
[0008]记录异步消息的发送状态、更新数据表格、对所述异步消息发送失败的事件进行通知以及请求重新发送所述异步消息。
[0009]在一种可能的实现方式中,所述发送异步消息,具体包括:
[0010]传入所述异步消息以及所述传入失败处理回调接口的实现类。
[0011]在一种可能的实现方式中,所述方法还包括:
[0012]预先定制所述传入失败处理回调接口的实现类的预设功能。
[0013]第二方面,本申请还提供了一种异步消息发送的处理装置,该装置包括异步消息发送单元、回调单元以及失败处理单元。其中,所述异步消息发送单元,用于发送异步消息;所述回调单元,用于当所述异步消息发送成功时,回调发送成功回调函数;当所述异步消息发送失败时,回调发送失败回调函数;所述失败处理单元,用于当回调发送失败回调函数
时,将所述异步消息对应的数据记录在发送失败表中,然后调用传入失败处理回调接口的实现类,所述传入失败处理回调接口的实现类用于在所述异步消息发送失败时实现预设功能。
[0014]利用本申请提供的装置,针对异步消息传送过程中可能出现发送失败导致的消息丢失,提出来一种异步消息发送的补偿机制,对失败记录做定制化处理,对于发送失败回调函数下增加传入失败处理回调接口的实现类,供应用模块实现其接口并增加失败处理逻辑,在获取发送失败返回值时,回调其实现类以保证系统数据一致性,传入失败处理回调接口的实现类的功能可以进行定制,因此使用简单方便,复用性强。
[0015]在一种可能的实现方式中,所述预设功能包括以下中的至少一项:
[0016]记录异步消息的发送状态、更新数据表格、对所述异步消息发送失败的事件进行通知以及请求重新发送所述异步消息。
[0017]在一种可能的实现方式中,所述异步消息发送单元,具体用于传入所述异步消息以及所述传入失败处理回调接口的实现类。
[0018]在一种可能的实现方式中,所述异步消息发送的处理装置还包括:功能定制单元;
[0019]所述功能定制单元,用于预先定制所述传入失败处理回调接口的实现类的预设功能。
[0020]第三方面,本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以上实现方式中提供的异步消息发送的处理方法。
[0021]第四方面,本申请还提供了一种电子设备,所述电子设备用于运行程序,程序运行时执行以上实现方式中提供的异步消息发送的处理方法。
附图说明
[0022]图1为本申请实施例提供的一种异步消息发送的处理方法的流程图;
[0023]图2为本申请实施例提供的架构示意图;
[0024]图3为本申请实施例提供的一种异步消息发送的处理装置的示意图;
[0025]图4为本申请实施例提供的另一种异步消息发送的处理装置的示意图。
具体实施方式
[0026]为了使本
的人员更清楚地理解本申请方案,下面首先说明本申请技术方案涉及的专业术语。
[0027]Kafka:由Scala编程语言和Java编程语言编写的一种高吞吐量的分布式发布订阅消息系统。
[0028]消息队列:是在消息的传输过程中保存消息的容器。
[0029]消息中间件:也即面向消息的中间件是支持在分布式系统之间发送和接收消息的软件或硬件基础结构。
[0030]异步消息:当使用异步消息传送时,发送者在发送消息以后无需等待接收程序的执行和返回结果,而是可以继续处理其他请求。
[0031]对于核心系统与众多的外部系统交互的场景,其中很多消息通过消息中间件通讯,使用异步消息的场景不同,要求也不尽相同,例如对于银行系统,对于各应用模块:存款
应用模块、贷款应用模块、支付应用模块、汇率应用模块等,对异步消息的应用具有不同的要求。有些场景下异步消息发送失败可以忽略不管,有些必须有特别的兜底处理,以确保系统数据的一致性。目前各应用发送异步消息的回调针对不同的场景时,需要进行不同的编程处理,代码量大且多冗余,实用性较差。
[0032]为了解决以上问题,本申请实施例提供了一种异步消息发送的处理方法、装置、存储介质及电子设备,对于发送失败回调函数下增加回调接口,供应用模块实现其接口并增加失败处理逻辑,在获取发送失败返回值时,回调其实现类以保证系统数据一致性,使用简单方便,复用性强。
[0033]为了使本
的人员更清楚地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
[0034]本申请说明中的“第一”、“第二”等用词仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量
[0035]本申请实施例提供了一种,下面结合附图具体说明。
[0036]参见图1,该图为本申请实施例提供的一种异步消息发送的处理方法的流程图。
[0037]该方法包括以下步骤:
[0038]S101:发送异步消息。
...

【技术保护点】

【技术特征摘要】
1.一种异步消息发送的处理方法,其特征在于,所述方法包括:发送异步消息;当所述异步消息发送成功时,回调发送成功回调函数;当所述异步消息发送失败时,回调发送失败回调函数;当回调发送失败回调函数时,将所述异步消息对应的数据记录在发送失败表中,然后调用传入失败处理回调接口的实现类,所述传入失败处理回调接口的实现类用于在所述异步消息发送失败时实现预设功能。2.根据权利要求1所述的异步消息发送的处理方法,其特征在于,所述预设功能包括以下中的至少一项:记录异步消息的发送状态、更新数据表格、对所述异步消息发送失败的事件进行通知以及请求重新发送所述异步消息。3.根据权利要求1所述的异步消息发送的处理方法,其特征在于,所述发送异步消息,具体包括:传入所述异步消息以及所述传入失败处理回调接口的实现类。4.根据权利要求1所述的异步消息发送的处理方法,其特征在于,所述方法还包括:预先定制所述传入失败处理回调接口的实现类的预设功能。5.一种异步消息发送的处理装置,其特征在于,所述装置包括:异步消息发送单元、回调单元以及失败处理单元;所述异步消息发送单元,用于发送异步消息;所述回调单元,用于当所述异步消息发送成功时,回调发送成功回调函数;当所述异步消息发送失败时,回调发送失败回调函...

【专利技术属性】
技术研发人员:杨秀丽钟艳辉朱政
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:

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

1