掌桥专利:专业的专利平台
掌桥专利
首页

一种基于大数据的消息订阅方法和装置

文献发布时间:2023-06-19 10:48:02


一种基于大数据的消息订阅方法和装置

技术领域

本发明涉及一种基于大数据的消息订阅方法和装置。

背景技术

在消息订阅系统中,消息的发布一般都基于消息中间件实现,即消息发布端将订阅消息发送到消息中间件,该消息中间件通过相关的方式(比如异步方式)将订阅消息发布到消息订阅端。通常而言,一个消息中间件可能需要为不止一个消息订阅端提供订阅消息,而随着消息订阅端的数目不断增加,可能会存在如下问题:由于不同的消息订阅端的消息订阅属性不同,而且消息中间件的提供订阅消息的能力有限,因此,可能存在不能为不同订阅属性的消息订阅端提供可靠服务的情况,进而导致无法进行消息订阅。

发明内容

本发明提供一种基于大数据的消息订阅方法和装置,用于解决现有的消息订阅方法的可靠性较差的技术问题。

一种基于大数据的消息订阅方法,包括如下步骤:

获取消息订阅端发送的消息订阅请求,所述消息订阅请求包括消息订阅端信息以及要求订阅的消息的消息名称信息;

对所述消息订阅端信息进行验证,以获取所述消息订阅端是否是有效消息订阅端的验证结果;

若所述验证结果为所述消息订阅端是有效消息订阅端,则根据所述消息名称信息,获取与所述要求订阅的消息相对应的消息中间件集合,所述消息中间件集合包括至少两个消息中间件;

根据所述消息中间件集合,获取所述消息中间件集合中符合预设条件的消息中间件;

根据获取到的消息中间件,与所述消息订阅端进行消息订阅。

进一步地,所述消息订阅端信息为所述消息订阅端的IP地址;

所述对所述消息订阅端信息进行验证,以获取所述消息订阅端是否是有效消息订阅端的验证结果具体为:

将所述消息订阅端的IP地址输入至预设的有效IP地址数据库中,若所述消息订阅端的IP地址属于所述有效IP地址数据库中的其中一个有效IP地址,则所述验证结果为所述消息订阅端是有效消息订阅端;若所述消息订阅端的IP地址不属于所述有效IP地址数据库中的任意一个有效IP地址,则所述验证结果为所述消息订阅端不是有效消息订阅端;其中,所述有效IP地址数据库包括至少两个有效IP地址。

进一步地,根据所述消息名称信息,获取与所述要求订阅的消息相对应的消息中间件集合具体为:

根据所述消息名称信息,以及预设的消息名称与消息属性的对应关系,获取与所述消息名称信息相对应的消息属性;

根据得到的消息属性,获取与所述得到的消息属性相对应的消息中间件集合。

进一步地,所述根据所述消息中间件集合,获取所述消息中间件集合中符合预设条件的消息中间件具体为:

根据所述消息中间件集合,获取所述消息中间件集合中负载满足预设条件的消息中间件。

进一步地,所述根据所述消息中间件集合,获取所述消息中间件集合中负载满足预设条件的消息中间件具体为:

根据所述消息中间件集合,获取所述消息中间件集合中各消息中间件的地址信息;

根据各消息中间件的地址信息,建立各消息中间件与所述消息订阅端的通信连接;

计算各消息中间件的负载,获取各负载中符合第一预设条件的负载,并获取与符合所述第一预设条件的负载相对应的消息中间件。

进一步地,所述基于大数据的消息订阅方法还包括如下步骤:

若检测到所述获取到的消息中间件存在异常,则根据获取到的所述消息中间件集合中除所述获取到的消息中间件之外的各其他消息中间件;

获取所述各其他消息中间件的地址信息;

根据所述各其他消息中间件的地址信息,建立所述各其他消息中间件与所述消息订阅端的通信连接;

计算所述各其他消息中间件的负载,获取所述各其他消息中间件的负载中符合第二预设条件的负载,并获取与符合所述第二预设条件的负载相对应的其他消息中间件;

根据获取到的其他消息中间件,与所述消息订阅端继续进行消息订阅。

一种基于大数据的消息订阅装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述的基于大数据的消息订阅方法的步骤。

本发明的技术效果包括:获取到的消息订阅端发送的消息订阅请求包括消息订阅端信息以及要求订阅的消息的消息名称信息,先对消息订阅端信息进行验证,若消息订阅端是有效消息订阅端,则根据消息名称信息,获取与要求订阅的消息相对应的消息中间件集合,消息中间件集合包括多个消息中间件,即获取与要求订阅的消息相对应的多个相关的消息中间件,从中获取符合预设条件的消息中间件,根据得到的符合预设条件的消息中间件,与消息订阅端进行消息订阅,能够实现消息的订阅,保证消息订阅顺利完成,避免存在不能为不同订阅属性的消息订阅端提供可靠的服务的情况,提升消息订阅的可靠性。

附图说明

图1是本发明提供的一种基于大数据的消息订阅方法的流程图。

具体实施方式

基于大数据的消息订阅方法实施例:

本实施例提供一种基于大数据的消息订阅方法,该基于大数据的消息订阅方法可以应用于服务器、计算机设备、智能移动终端等等。如图1所示,基于大数据的消息订阅方法包括以下步骤:

(1)获取消息订阅端发送的消息订阅请求,所述消息订阅请求包括消息订阅端信息以及要求订阅的消息的消息名称信息:

本发明提供的基于大数据的消息订阅方法的硬件执行主体与至少一个消息订阅端进行通信交互。消息订阅端需要进行消息订阅时,发出消息订阅请求,硬件执行主体接收到消息订阅请求。应当理解,消息中间件可以设置在硬件执行主体中,或者硬件执行主体与消息中间件通信交互。

消息订阅请求包括消息订阅端信息以及要求订阅的消息的消息名称信息,其中,消息订阅端信息为消息订阅端的相关数据消息(比如IP地址信息),消息名称信息为要求订阅的消息的消息名称信息。

(2)对所述消息订阅端信息进行验证,以获取所述消息订阅端是否是有效消息订阅端的验证结果:

对消息订阅请求中的消息订阅端信息进行验证,以获取消息订阅端是否是有效消息订阅端的验证结果。应当理解,消息订阅端信息不同,对应的验证过程也会有所差异,本实施例中,消息订阅端信息为消息订阅端的IP地址,相应地,对消息订阅端信息进行验证的严重过程具体为:

预设有一个有效IP地址数据库,该有效IP地址数据库包括至少两个有效IP地址,各有效IP导致对应的消息订阅端为有效的消息订阅端,即可以进行消息订阅的消息订阅端。

将消息订阅端的IP地址输入至预设的有效IP地址数据库中,若消息订阅端的IP地址属于有效IP地址数据库中的其中一个有效IP地址,则验证结果为消息订阅端是有效消息订阅端;若消息订阅端的IP地址不属于有效IP地址数据库中的任意一个有效IP地址,则验证结果为消息订阅端不是有效消息订阅端。

(3)若所述验证结果为所述消息订阅端是有效消息订阅端,则根据所述消息名称信息,获取与所述要求订阅的消息相对应的消息中间件集合,所述消息中间件集合包括至少两个消息中间件:

若验证结果为消息订阅端是有效消息订阅端,则根据消息名称信息,获取与要求订阅的消息相对应的消息中间件集合。本实施例中,预设有消息名称与消息属性的对应关系,即该对应关系包括至少两个消息名称,以及与各消息名称相对应的消息属性。那么,根据消息名称信息以及预设的消息名称与消息属性的对应关系,获取与消息名称信息相对应的消息属性。然后根据得到的消息属性,获取与得到的消息属性相对应的消息中间件集合。应当理解,每种消息属性均对应有一个消息中间件集合,不同的消息属性所对应的消息中间件集合通常是不同的。那么,根据得到的消息属性,就能够得到与该消息属性相对应的消息中间件集合。对于任意一个消息中间件集合而言,包括至少两个消息中间件,各消息中间件是与对应的消息属性相对应的消息中间件,也可以理解为:与对应的消息订阅端相对应的消息中间件集合。消息中间件集合中的每个消息中间件具有一个地址标识(比如IP地址)和相关端口。

(4)根据所述消息中间件集合,获取所述消息中间件集合中符合预设条件的消息中间件:

根据得到的消息中间件集合,获取消息中间件集合中符合预设条件的消息中间件,本实施例中,预设条件是与负载相关的条件,那么,根据得到的消息中间件集合,获取消息中间件集合中负载满足预设条件的消息中间件。

作为一个具体实施方式,根据得到的消息中间件集合,获取消息中间件集合中各消息中间件的地址信息。由于每个消息中间件中设置有对应的地址标识和相关端口,那么,获取消息中间件集合中各消息中间件的地址信息。

根据各消息中间件的地址信息,建立各消息中间件与消息订阅端的通信连接。

计算各消息中间件的负载,即根据各消息中间件的地址消息,建立各消息中间件与消息订阅端的通信连接以进行负载测试,根据测试数据计算各个消息中间件对应的负载。然后,从各负载中获取符合第一预设条件的负载,并获取与符合第一预设条件的负载相对应的消息中间件,该消息中间件即为所需的消息中间件。应当理解,第一预设条件可以为将负载最小的消息中间件作为所需的消息中间件,或将负载位于目标范围的消息中间件作为所需的消息中间件。另外,若负载位于目标范围的消息中间件不止一个,则可以从这些消息中间件中选取任意一个消息中间件作为所需的消息中间件。

(5)根据获取到的消息中间件,与所述消息订阅端进行消息订阅:

根据获取到的消息中间件,与消息订阅端建立消息订阅。

本实施例中,由于若获取到的消息中间件出现异常,则可能无法进行消息订阅,因此可以对得到的消息中间件进行进一步检测,确定该消息中间件是否存在异常。检测方式可以为:检测该消息中间件的负载是否大于预设高负载设定值,若大于预设高负载设定值,则该消息中间件的负载过大可能会影响消息订阅,因此,判定为异常。因此,本实施例中,基于大数据的消息订阅方法还包括如下步骤:

若检测到获取到的消息中间件存在异常,则根据获取到的消息中间件集合,得到该消息中间件集合中除获取到的消息中间件之外的各其他消息中间件。即将该消息中间件集合中除获取到的消息中间件之外的各消息中间件称为其他消息中间件。

同理,获取各其他消息中间件的地址信息,并根据各其他消息中间件的地址信息,建立各其他消息中间件与消息订阅端的通信连接。

计算各其他消息中间件的负载,获取各其他消息中间件的负载中符合第二预设条件的负载,并获取与符合第二预设条件的负载相对应的其他消息中间件,获取到的其他消息中间件即为所需的消息中间件。应当理解,第二预设条件可以为将负载最小的其他消息中间件作为所需的其他消息中间件,或将负载位于目标范围的其他消息中间件作为所需的其他消息中间件。

根据获取到的其他消息中间件,与消息订阅端继续进行消息订阅。

基于大数据的消息订阅装置实施例:

本实施例提供一种基于大数据的消息订阅装置,包括存储器和处理器,以及存储在存储器上并在处理器上运行的计算机程序,处理器与存储器相耦合,处理器执行计算机程序时实现上文中的基于大数据的消息订阅方法,由于该基于大数据的消息订阅方法在上文已给出了详细说明,不再赘述。

相关技术
  • 一种基于大数据的消息订阅方法和装置
  • 一种消息订阅系统、消息订阅方法及装置
技术分类

06120112686053