一种消息处理方法、装置、电子设备及存储介质与流程

文档序号:36653127发布日期:2024-01-06 23:39阅读:24来源:国知局
一种消息处理方法、装置、电子设备及存储介质与流程

本发明涉及数据传输,尤其涉及一种消息处理方法、装置、电子设备及存储介质。


背景技术:

1、消息中间件是基于队列与消息传递技术,在网络环境中为应用系统提供同步或异步、可靠的消息传输的支撑性软件系统。当前比较流行的开源消息中间件包括:activemq、rabbitmq、rocketmq、kafka和zeromq等。然而,目前在消息传递过程中,消息发送端和消息接收端需要使用同一个消息中间件,若消息发送端和消息接收端使用的是不同的消息中间件,则无法进行通信,即无法完成消息的传递。


技术实现思路

1、为了解决上述技术问题或者至少部分地解决上述技术问题,本发明提供了一种消息处理方法、装置、电子设备以及存储介质。

2、第一方面,本发明提供了一种消息处理方法,所述方法包括:

3、接收第一消息中间件中第一队列发送的目标消息,所述第一队列为第一消息中间件中用于接收消息发送端发送消息的队列,所述第一队列发送的目标消息的格式为第一格式;

4、将所述目标消息的格式由所述第一格式转换为第二消息中间件对应的第二格式,并将转换为所述第二格式的所述目标消息转发至所述第二消息中间件中的第二队列,以使所述第二队列将所述目标消息传输至消息接收端。

5、在本发明的可选实施方式中,所述方法还包括:

6、获取所述第一消息中间件的第一地址和所述第二消息中间件的第二地址;

7、基于所述第一地址、所述第二地址、所述第一队列和所述第二队列,创建任务处理线程,并利用所述任务处理线程执行所述接收第一消息中间件中第一队列发送的目标消息及将所述目标消息的格式由所述第一格式转换为第二消息中间件对应的第二格式,并将转换为所述第二格式的所述目标消息转发至所述第二消息中间件中的第二队列的步骤。

8、在本发明的可选实施方式中,所述方法还包括:

9、在将转换为所述第二格式的所述目标消息转发至所述第二消息中间件中的第二队列之前,确定所述目标消息是否符合预设的第一筛选条件;

10、在所述目标消息符合所述第一筛选条件时,执行将所述目标消息的格式由所述第一格式转换为第二消息中间件对应的第二格式,并将转换为所述第二格式的所述目标消息转发至所述第二消息中间件中的第二队列的步骤;

11、在所述目标消息不符合所述第一筛选条件时,发送用于提示所述目标消息验证失败的提示信息;

12、其中,当所述目标消息对应的键值与预设键值一致时,确定所述目标消息符合所述第一筛选条件,或,当所述目标消息对应的内容包括预设内容时,确定所述目标消息符合所述第一筛选条件。

13、在本发明的可选实施方式中,所述方法还包括:

14、在将转换为所述第二格式的所述目标消息转发至所述第二消息中间件中的第二队列之后,确定所述目标消息是否符合预设的第二筛选条件;

15、在所述目标消息不符合所述第二筛选条件时,标记所述目标消息;

16、当接收到被标记的所述目标消息对应的修改消息时,将所述修改消息发送至所述第二队列;

17、其中,当所述目标消息对应的键值与预设键值一致时,确定所述目标消息符合所述第二筛选条件,或,当所述目标消息对应的内容包括预设内容时,确定所述目标消息符合所述第二筛选条件。

18、在本发明的可选实施方式中,所述方法还包括:

19、确定所述消息接收端在预设时间段内接收的消息的数据量;

20、在所述数据量大于预设阈值时,控制所述任务处理线程停止向所述第二队列发送所述目标消息,或,关闭所述任务处理线程。

21、在本发明的可选实施方式中,所述方法还包括:

22、获取所述第一消息中间件对应的第一开发工具包和所述第二消息中间件对应的第二开发工具包;

23、对所述第一开发工具包和所述第二开发工具包进行封装,得到目标开发工具包;

24、将所述目标开发工具包发送至所述消息发送端和所述消息接收端,以使所述消息发送端通过所述目标开发工具包向所述第一队列发送所述目标消息,以及,所述消息接收端通过所述目标开发工具包接收所述第二队列传输的所述目标消息。

25、在本发明的可选实施方式中,所述方法还包括:

26、在预设数据库中确定所述任务处理线程对应的存储空间;

27、将所述任务处理线程处理的目标消息存储至所述存储空间中。

28、第二方面,本发明提供了一种消息处理装置,所述装置包括:

29、接收模块,用于接收第一消息中间件中第一队列发送的目标消息,所述第一队列为第一消息中间件中用于接收消息发送端发送消息的队列,所述第一队列发送的目标消息的格式为第一格式;

30、转发模块,用于将所述目标消息的格式由所述第一格式转换为第二消息中间件对应的第二格式,并将转换为所述第二格式的所述目标消息转发至所述第二消息中间件中的第二队列,以使所述第二队列将所述目标消息传输至消息接收端。

31、在本发明的可选实施方式中,所述装置还包括创建模块,所述创建模块用于:

32、获取所述第一消息中间件的第一地址和所述第二消息中间件的第二地址;

33、基于所述第一地址、所述第二地址、所述第一队列和所述第二队列,创建任务处理线程,并利用所述任务处理线程执行所述接收第一消息中间件中第一队列发送的目标消息及将所述目标消息的格式由所述第一格式转换为第二消息中间件对应的第二格式,并将转换为所述第二格式的所述目标消息转发至所述第二消息中间件中的第二队列的步骤。

34、在本发明的可选实施方式中,所述装置还包括筛选模块,所述筛选模块用于:

35、在将转换为所述第二格式的所述目标消息转发至所述第二消息中间件中的第二队列之前,确定所述目标消息是否符合预设的第一筛选条件;

36、在所述目标消息符合所述第一筛选条件时,执行将所述目标消息的格式由所述第一格式转换为第二消息中间件对应的第二格式,并将转换为所述第二格式的所述目标消息转发至所述第二消息中间件中的第二队列的步骤;

37、在所述目标消息不符合所述第一筛选条件时,发送用于提示所述目标消息验证失败的提示信息;

38、其中,当所述目标消息对应的键值与预设键值一致时,确定所述目标消息符合所述第一筛选条件,或,当所述目标消息对应的内容包括预设内容时,确定所述目标消息符合所述第一筛选条件。

39、在本发明的可选实施方式中,所述筛选模块,还用于:

40、在将转换为所述第二格式的所述目标消息转发至所述第二消息中间件中的第二队列之后,确定所述目标消息是否符合预设的第二筛选条件;

41、在所述目标消息不符合所述第二筛选条件时,标记所述目标消息;

42、当接收到被标记的所述目标消息对应的修改消息时,将所述修改消息发送至所述第二队列;

43、其中,当所述目标消息对应的键值与预设键值一致时,确定所述目标消息符合所述第二筛选条件,或,当所述目标消息对应的内容包括预设内容时,确定所述目标消息符合所述第二筛选条件。

44、在本发明的可选实施方式中,所述装置还包括控制模块,所述控制模块用于:

45、确定所述消息接收端在预设时间段内接收的消息的数据量;

46、在所述数据量大于预设阈值时,控制所述任务处理线程停止向所述第二队列发送所述目标消息,或,关闭所述任务处理线程。

47、在本发明的可选实施方式中,所述装置还包括封装模块,所述封装模块用于:

48、获取所述第一消息中间件对应的第一开发工具包和所述第二消息中间件对应的第二开发工具包;

49、对所述第一开发工具包和所述第二开发工具包进行封装,得到目标开发工具包;

50、将所述目标开发工具包发送至所述消息发送端和所述消息接收端,以使所述消息发送端通过所述目标开发工具包向所述第一队列发送所述目标消息,以及,所述消息接收端通过所述目标开发工具包接收所述第二队列传输的所述目标消息。

51、在本发明的可选实施方式中,所述装置还包括存储模块,所述存储模块用于:

52、在预设数据库中确定所述任务处理线程对应的存储空间;

53、将所述任务处理线程处理的目标消息存储至所述存储空间中。

54、第三方面,本发明提供了一种电子设备,包括:至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行上述第一方面中任一项所述的消息处理方法。

55、第四方面,本发明实施例提供一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述第一方面中任一项所述的消息处理方法。

56、本发明实施例提供的技术方案,首先,接收第一消息中间件中第一队列发送的目标消息,所述第一队列为第一消息中间件中用于接收消息发送端发送消息的队列,所述第一队列发送的目标消息的格式为第一格式;然后,将所述目标消息的格式由所述第一格式转换为第二消息中间件对应的第二格式,并将转换为所述第二格式的所述目标消息转发至所述第二消息中间件中的第二队列,以使所述第二队列将所述目标消息传输至消息接收端。即,通过本方案可以将第一消息中间件中的目标消息由第一格式转换为第二消息中间件可接收的第二格式,进而将转换格式后的目标消息转发至第二消息中间件,从而实现不同消息中间件之间的数据传递。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1