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

一种分布式消息架构管理方法、平台及电子设备

文献发布时间:2023-06-19 10:08:35


一种分布式消息架构管理方法、平台及电子设备

技术领域

本说明书一个或多个实施例涉及计算机技术领域,尤其涉及一种分布式消息架构管理方法、平台及电子设备。

背景技术

目前在市面上比较主流的分布式消息架构软件主要有Kafka、ActiveMQ、RabbitMQ、RocketMQ等,上述各分布式消息架构均是由一个或多个Erlang节点组成的逻辑组,每个Erlang节点上创建有一个或多个用于存储消息的消息队列,这些相关节点组成的集合为一个cluster(集群)。现有的各类分布式消息架构均只涉及一个集群,集群层级不设秘钥,集群IP是公开的,以方便用户进行集群的访问,但是一个集群很可能是多个用户在使用,即一个用户可以对应集群中的一个或多个消息队列,集群中的多个消息队列也可以对应一个或多个用户,集群IP公开会存在很大的安全隐患,例如恶意用户对于该集群IP的攻击,可能会导致整个集群中所有消息队列中所存储消息的破坏或丢失。

另外,现有的各类分布式消息架构因仅能对单集群进行操作,无法同时管理多个集群,这也造成了储存空间受限,继而出现吞吐量无法满足现有的业务需求的问题。

因此,需要提供一种安全性高且存储量大的分布式消息架构平台。

发明内容

有鉴于此,本说明书一个或多个实施例的目的在于提出一种分布式消息架构管理方法、平台及电子设备,以解决现有分布式消息架构软件安全性低且存储量有限的问题。

基于上述目的,本说明书一个或多个实施例提供了一种分布式消息架构管理方法,应用于分布式消息架构管理平台,所述分布式消息管理平台包括:数据接入端口、Service和至少两个集群;

所述管理方法包括:

所述数据接入端口接收用户提交的业务消息,并将所述业务消息发送至所述Service;其中,所述业务消息包括业务数据、秘钥信息和消息队列的队列ID;

所述Service根据所述秘钥信息在至少两个所述集群中确定目标集群,根据所述队列ID在所述目标集群中确定目标队列,并将所述业务数据保存到所述目标集群中的所述目标队列中。

基于同一发明构思,本说明书一个或多个实施例还提供了一种分布式消息架构管理平台,所述分布式消息管理平台包括:数据接入端口、Service和集群;

所述数据接入端口,被配置为接收用户提交的业务消息,并将所述业务消息发送至所述Service;其中,所述业务消息包括业务数据、秘钥信息和消息队列的队列ID;

所述Service,被配置为根据所述秘钥信息在至少两个所述集群中确定目标集群,根据所述队列ID在所述目标集群中确定目标队列,并将所述业务数据保存到所述目标集群中的所述目标队列中。

基于同一发明构思,本说明书一个或多个实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述任一项所述的方法。

从上面所述可以看出,本说明书一个或多个实施例提供的一种分布式消息架构管理方法、平台及电子设备,在集群层级设置秘钥,且集群可以为一个或多个,用户后续在向Service传送消息时携带该秘钥信息及队列ID,Service即可根据该秘钥信息及队列ID判断所属目标集群及目标队列,并访问目标集群的相关目标队列进行消息的存储;该密钥式多集群管理模式无需用户获知集群IP,集群安全性高。

附图说明

为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本说明书一个或多个实施例的一种分布式消息架构管理平台整体架构示意图;

图2为本说明书一个或多个实施例的业务消息存储功能实现步骤流程图;

图3为本说明书一个或多个实施例的集群创建功能实现步骤流程图;

图4为本说明书一个或多个实施例的集群创建功能具体实现步骤流程图;

图5为本说明书一个或多个实施例的用户创建功能实现步骤流程示意图;

图6为本说明书一个或多个实施例的用户创建功能具体实现步骤流程示意图;

图7为本说明书一个或多个实施例的Java-sdk端口业务消息存储功能实现步骤流程示意图;

图8为本说明书一个或多个实施例的Java-sdk端口业务消息存储功能具体实现步骤流程示意图;

图9为本说明书一个或多个实施例open-api端口业务消息存储功能实现步骤流程示意图;

图10为本说明书一个或多个实施例的电子设备结构示意图。

具体实施方式

为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。

需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。

如背景技术所述,现有的主流的分布式消息架构软件只能对单集群进行操作,集群层级不设秘钥,集群IP是公开的,集群IP公开会存在很大的安全隐患;另外,现有的分布式消息架构无法同时管理多个集群,这也造成吞吐量无法满足现有的业务需求;在Kafka、ActiveMQ、RabbitMQ、RocketMQ中,尤其是以ActiveMQ、RabbitMQ的吞吐量受限比较严重,Kafka、RocketMQ较ActiveMQ、RabbitMQ吞吐量大很多,主要是其底层架构有所不同;Kafka、RocketMQ中的多个节点是可以分区的,区域间的消息内容可以相同(即作为备份)也可以不同(即可以存储更多消息),由此使其有更大的存储空间,并同时拥有较大的吞吐量。而,现有的ActiveMQ、RabbitMQ一般是一个集群的多个节点储存相同的消息内容,例如设置两个节点的情况下,一个节点的消息队列中存储消息,另一节点的消息队列中存储消息镜像,可以简单理解为一个节点存储消息原件,一个节点存储消息备份件;且,现有的ActiveMQ、RabbitMQ架构因无法对集群内的节点进行分区,因此,其存储空间较Kafka、RocketMQ小,相应的吞吐量也较小。现在,越来越多的用户选择Kafka、RocketMQ等吞吐量大的消息分布式架构进行消息存储,但是其使用成本及维护成本也较高,且都没有从根本上解决集群安全性问题及吞吐量受限的问题。

有鉴于此,本说明书的一个或多个实施例提出了一种分布式消息架构管理方法、平台和设备,Service可以创建或管理一个或多个集群,并在集群层级设置秘钥,申请人在实现本公开的过程中发现,与传统的单集群管理模式相比,该多集群的设置可以扩大分布式消息架构的存储量从而提升其吞吐量;另外,与传统的用户需要通过集群IP访问集群相比,该在集群层级设置秘钥的技术方案在不影响用户正常访问集群的前提下,隐藏了集群IP信息,提高了集群安全性。

以下通过具体的实施例,结合图1-图10进一步详细说明本说明书一个或多个实施例的技术方案。

参考图1,本说明书的一个或多个实施例提供一种分布式消息架构管理方法,应用于分布式消息架构管理平台,所述分布式消息管理平台包括:数据接入端口、Service和至少两个集群;

进一步,所述分布式消息管理平台还包括Console界面;

进一步,所述分布式消息管理平台还包括消息中间件,所述消息中间件也是消息队列的一种,只是其与集群中各节点上创建的消息队列所起功用有所不同,消息中间件起到的作用主要是消息通道的作用,用户由界面或端口输入的消息均会通过消息中间件发送给Service,由Service反馈回来的信息也会通过消息中间件反馈给用户;而,集群各节点上的消息队列主要是为存储相关业务消息;

进一步,所述分布式消息管理平台还包括conn;所述conn具体可以为一服务器,用于收集Java-sdk端口发出的消息并发送给Service,并Service反馈的消息发送至Java-sdk端口。

进一步,所述数据接入端口包括Java-sdk端口和open-api端口,所述Java-sdk端口通过所述conn与所述Service通讯。

作为一个可选地实施例,参考图2,所述管理方法包括:

业务消息存储功能实现步骤:

S201、所述数据接入端口接收用户提交的业务消息,并将所述业务消息发送至所述Service;其中,所述业务消息包括业务数据、秘钥信息和消息队列的队列ID;

S202、所述Service根据所述秘钥信息在至少两个所述集群中确定目标集群,根据所述队列ID在所述目标集群中确定目标队列,并将所述业务数据保存到所述目标集群中的所述目标队列中。

进一步地,所述秘钥信息包括appkey、appsercet。

本实施例的一种分布式消息架构管理方法,且集群可以为一个或多个,用户后续在向Service传送消息时携带该秘钥信息及队列ID,Service即可根据该秘钥信息及队列ID判断所属目标集群及目标队列,并访问目标集群的相关目标队列进行消息的存储;该密钥式多集群管理模式无需用户获知集群IP,集群安全性高。

作为一可选实施例,参考图3,所述管理方法,还包括:

集群创建功能实现步骤:

S301、所述Console界面接收用户提交的集群创建消息,并将所述集群创建消息发送至所述Service;

S302、所述Service根据所述集群创建消息,创建新的所述集群,并为新创建的所述集群自动匹配所述秘钥信息;将所述秘钥信息在数据库中同步更新,并通过所述Console界面显示。

进一步,在所述数据库中同步更新的数据还有集群创建时间、集群IP(集群地址,仅对运维人员可见)、版本号、节点数、存储空间、已用空间等。

本实施例的上述各步骤实现了分布式消息架构平台的集群创建功能,并实现界面式的多集群管理功能。集群创建及集群后续的访问方式均较简单,便于用户操作,具体地,用户直接在界面上即可以向所述Service服务器发送增加集群的消息,服务器在新建集群后反馈该秘钥信息给用户,因每个集群都会匹配秘钥信息,用户后续在向所述Service传送消息时携带该秘钥信息,Service即可根据该秘钥访判断所属集群,并访问相关集群进行消息的存储。

进一步,参考图4,所述集群创建功能的具体实现步骤如下:

S401、所述Console界面接收用户提交的集群创建消息,并将所述集群创建消息发送至消息中间件;

S402、所述消息中间件将所述集群创建消息发送至所述Service;

S403、所述Service根据所述集群创建消息,创建新的所述集群,并为新创建的所述集群自动匹配所述秘钥信息;将所述秘钥信息在数据库中同步更新,并将所述秘钥信息发送至所述消息中间件;

S404、所述消息中间件将所述秘钥信息发送至所述Console界面;

S405、所述Console界面显示所述秘钥信息。

作为一可选实施例,参考图5,所述管理方法,还包括:

用户创建功能实现步骤:

S501、所述Console界面接收用户提交的用户创建消息,并创建新用户,在新用户创建成功的同时,所述Console界面同步发出消息队列创建消息至所述Service;其中,所述用户创建消息包括用户名、集群名称、消息队列的队列个数和消息队列的存储空间;

S502、所述Service根据所述集群名称在数据库中查询该所述集群名称对应的所述秘钥信息,并根据所述秘钥信息在至少两个所述集群中确定所述目标集群,根据消息队列的队列个数及消息队列的存储空间在所述目标集群中创建对应个数的消息队列,并为新创建的所述消息队列自动匹配所述队列ID;将所述队列ID在数据库中同步更新,并通过所述Console界面显示。

进一步,在数据库中同步更新的数据还有用户名、用户创建时间、最近活跃度、队列数上限、已创建队列、已用存储空间、剩余存储空间。

本实施例的上述各步骤实现了用户创建功能,并实现界面式的用户管理功能。即,用户在Console界面上创建了新用户的同时,Console界面就会反馈该用户选定集群的秘钥信息;新用户在Console界面上登录后,会向所述Service发送创建消息队列的消息(创建消息队列的个数及存储上限均在用户创建环节由用户进行填写设定),所选集群中创建相应个数及存储空间的消息队列,并反馈用户包括队列ID信息在内的队列信息,后续该用户由端口发送的业务消息中只要携带秘钥信息及队列ID信息,即可将业务消息中的业务数据保存到所述集群的相应队列中。

需要说明的是,在创建新用户时需要先选择已有集群进行创建,并在创建新用户后在该选定的集群中创建一个或多个消息队列,即该用户可以绑定一个集群中的一个或多个消息队列,也可以绑定多个集群中的一个或多个消息队列。

进一步,参考图6,所述用户创建功能的具体实现步骤如下:

S601、所述Console界面接收用户提交的用户创建消息,并创建新用户,在新用户创建成功的同时,所述Console界面同步发出消息队列创建消息至所述消息中间件;

S602、所述消息中间件将所述消息队列创建消息发送至所述Service;

S603、所述Service根据所述集群名称在数据库中查询该所述集群名称对应的所述秘钥信息,并根据所述秘钥信息在至少两个所述集群中确定所述目标集群,根据消息队列的队列个数及消息队列的存储空间在所述目标集群中创建对应个数的消息队列,并为新创建的所述消息队列自动匹配所述队列ID;将所述队列ID在数据库中同步更新,并将所述队列ID发送至所述消息中间件;

S604、所述消息中间件将所述队列ID发送至所述Console界面;

S605、所述Console界面显示所述队列ID。

作为一可选实施例,参考图7,所述管理方法还包括:

Java-sdk端口业务消息存储功能实现步骤(为对所述业务消息存储功能实现步骤的进一步限定):

S701、所述Java-sdk端口接收用户提交的所述业务消息至所述conn;

S702、所述conn将所述业务消息发送至所述Service;

S703、所述Service根据所述业务消息中的所述秘钥信息在至少两个所述集群中确定目标集群,查询数据库中所述目标集群的集群IP,并将所述集群IP发送至所述Java-sdk端口;

S704、所述Java-sdk端口根据所述集群IP,发送所述业务消息至所述目标集群,并根据所述业务消息中的所述队列ID在所述目标集群中确定目标队列,将所述业务数据保存到所述目标集群中的所述目标队列中。

本实施例的上述各步骤完成了Java-sdk端口Java-sdk端口业务消息存储功能,即用户通过Java-sdk端口的conn将业务消息发送给Service,所述Service查询并反馈用户所述数据库中对应的集群IP;Java-sdk端口根据获取到的所述集群IP,将所述业务消息发送并保存至目标集群的目标队列中。

进一步,参考图8,所述Java-sdk端口业务消息存储功能的具体实现步骤如下:

S801、所述Java-sdk端口接收用户提交的所述业务消息至所述conn;

S802、所述conn将所述业务消息发送至所述消息中间件;

S803、所述消息中间件将所述业务消息发送至所述Service;

S804、所述Service根据所述业务消息中的所述秘钥信息在至少两个所述集群中确定目标集群,查询数据库中所述目标集群的集群IP,并将所述集群IP发送至所述Java-sdk端口;

S805、所述Java-sdk端口根据所述集群IP,发送所述业务消息至所述目标集群,并根据所述业务消息中的所述队列ID在所述目标集群中确定目标队列,将所述业务数据保存到所述目标集群中的所述目标队列中,目标队列信息发生变化;所述目标队列信息包括队列可用存储空间、队列访问时间;

S806、所述集群将所述目标队列信息发送至所述Service;

S807、所述Service将所述目标队列信息在数据库中同步更新,并将所述目标队列信息发送至所述消息中间件;

S808、所述消息中间件将所述目标队列信息发送至所述Console界面;

S809、所述Console界面显示所述目标队列信息。

进一步,所述目标队列信息包括队列ID、队列内存可用上限、队列创建时间、队列可用存储空间、队列访问时间等;所述目标队列信息中的可变信息包括队列可用存储空间、队列访问时间等信息。

需要说明的是,用户在将业务消息发送至所述Java-sdk端口之前,可先通过conn、消息中间件主动向Service请求所述目标队列信息,Service将数据库中的目标队列信息通过消息中间件、conn、Java-sdk端口反馈给用户,使得用户获知目标队列的可用存储空间。

现有技术中,各分布式消息架构的Java-sdk端口接入方式为用户由Java-sdk端口输入的业务消息可以直接访问所属目标集群及目标集群中的目标队列,并在目标队列中进行存储,但是,以RabbitMQ架构为例,用户需要在输入要保存的业务数据的同时,输入集群IP、集群端口、集群协议、VirtualHost(虚拟机)信息、Username(用户名)、password(密码)、Chanel(通道)、队列ID、队列类型等信息,接入方式复杂,且用户需要知晓集群IP,安全性较差;本实施例的Java-sdk端口接入方式设置为两个步骤,第一个步骤主要为通过秘钥信息获取集群IP,第二个步骤为Java-sdk端口的业务消息中的业务数据携带集群IP及队列ID直接访问目标集群及目标集群中的目标队列,并将业务数据存储于目标队列中。虽然看似是两个步骤,但是该两个步骤间无需用户介入,用户仅需要在最开始时输入业务数据、秘钥信息及队列ID,后续步骤可自行运行,接入方式简单;且涉及到的集群IP只是在架构内部流转,并不会在终端界面上进行显示,因此安全性高。

作为一可选实施例,参考图9,所述管理方法还包括:

open-api端口业务消息存储功能实现步骤(为对所述业务消息存储功能实现步骤的进一步限定):

S901、所述open-api端口接收用户提交的所述业务消息,并将所述业务消息发送至所述消息中间件;

S902、所述消息中间件将所述业务消息发送至所述Service;

S903、所述Service根据所述业务消息中的所述秘钥信息在至少两个所述集群中确定目标集群,根据所述队列ID在所述目标集群中确定目标队列,并将所述业务数据保存到所述目标集群中的所述目标队列中,目标队列信息发生变化;所述目标队列信息包括队列可用存储空间、队列访问时间;

S904、所述集群将所述目标队列信息发送至所述Service;

S905、所述Service将所述目标队列信息在数据库中同步更新,并将所述目标队列信息发送至所述消息中间件;

S906、所述消息中间件将所述目标队列信息发送至所述Console界面;

S907、所述Console界面显示所述目标队列信息。

需要说明的是,用户在将业务消息发送至所述open-api端口之前,可先通过消息中间件主动向Service请求所述目标队列信息,Service将数据库中的目标队列信息通过消息中间件、open-api端口反馈给用户,使得用户获知目标队列的可用存储空间。

本实施例的上述各步骤完成了open-api端口业务数据存储功能,即用户通过open-api端口将业务消息发送给Service,所述Service通过业务消息内容判断所属目标集群及所属目标队列,并将所述复合消息中的业务数据保存至目标集群的目标队列中,目标队列信息在数据库中同步更新,并在界面上进行显示。

现有技术中,各分布式消息架构的open-api端口接入方式为用户由open-api端口输入的业务消息可以通过Service访问所属目标集群及目标集群中的目标队列,并在目标队列中进行存储,但是,以RabbitMQ架构为例,用户需要在输入要保存的业务数据的同时,需要输入集群IP、集群端口、集群协议、VirtualHost(虚拟机)信息、Username(用户名)、password(密码)、Chanel(通道)、队列ID、队列类型等信息,接入方式复杂,且用户需要知晓集群IP,安全性较差;本实施例的open-api端口接入方式设置为用户由open-api端口输入的业务数据只要携带秘钥信息及队列ID即可通过Service访问所属目标集群及目标集群中的目标队列,并在目标队列中进行存储,接入方式简单;且无需涉及集群IP,因此安全性高。

上述实施例中的Java-sdk端口业务数据存储功能和open-api端口业务数据存储功能,在发送的业务消息中均只需要有业务数据、秘钥信息和队列ID即可进行数据接入存储,较现有的RabbitMQ的业务数据接入方式简单,易于操作。且,本说明书中的一个或多个实施例提及的Java-sdk端口和open-api端口的接入方式打破了集群协议,用秘钥信息在构架内部自动获取集群IP、集群端口等信息,接入方式简单,安全系数高。

另外,现有的分布式消息管理架构中,以RabbitMQ为例,相关功能实现步骤均要在其底层架构上去创建或查询,这需要操作人员对RabbitMQ软件非常熟悉且对其底层架构原理非常了解,才能够进行相关操作,且相关消息的操作信息均是通过文件进行的简单记载,即可以在界面上去呈现的内容很少,用户操作界面不友好,不利于各功能管理。

基于该问题,本说明书一个或多个实施例中提及的一种分布式消息架构管理方法可对业务消息存储功能(包括Java-sdk端口业务消息存储功能和open-api端口业务消息存储功能)、集群创建功能、用户创建功能实现界面化管理,具体实现方式为各个环节的操作及反馈信息均会同步到数据库中,数据量大,且相关更新信息会在界面上进行显示,方便对于各功能模块的界面管理,界面友好,操作方便。

需要说明的是,本说明书一个或多个实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本说明书一个或多个实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。

需要说明的是,上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

基于同一发明构思,与上述任意实施例方法相对应的,本说明书一个或多个实施例还提供了一种分布式消息架构管理平台,包括:数据接入端口、Service和集群;

所述数据接入端口,被配置为接收用户提交的业务消息,并将所述业务消息发送至所述Service;其中,所述业务消息包括业务数据、秘钥信息和消息队列的队列ID;

所述Service,被配置为根据所述秘钥信息在至少两个所述集群中确定目标集群,根据所述队列ID在所述目标集群中确定目标队列,并将所述业务数据保存到所述目标集群中的所述目标队列中。

作为一可选实施例,所述分布式消息管理平台,还包括:Console界面;

所述Console界面接收用户提交的集群创建消息,并将所述集群创建消息发送至所述Service;

所述Service根据所述集群创建消息,创建新的所述集群,并为新创建的所述集群自动匹配所述秘钥信息;将所述秘钥信息在数据库中同步更新,并通过所述Console界面显示。

作为一可选实施例,所述分布式消息管理平台,还包括:消息中间件;

所述Console界面接收用户提交的集群创建消息,并将所述集群创建消息发送至所述消息中间件;

所述消息中间件将所述集群创建消息发送至所述Service;

所述Service根据所述集群创建消息,创建新的所述集群,并为新创建的所述集群自动匹配所述秘钥信息;将所述秘钥信息在数据库中同步更新,并将所述秘钥信息发送至所述消息中间件;

所述消息中间件将所述秘钥信息发送至所述Console界面;

所述Console界面显示所述秘钥信息。

作为一可选实施例,所述分布式消息管理平台,还包括:Console界面;

所述Console界面接收用户提交的用户创建消息,并创建新用户,在新用户创建成功的同时,所述Console界面同步发出消息队列创建消息至所述Service;其中,所述用户创建消息包括用户名、集群名称、消息队列的队列个数和消息队列的存储空间;

所述Service根据所述集群名称在数据库中查询该所述集群名称对应的所述秘钥信息,并根据所述秘钥信息在至少两个所述集群中确定所述目标集群,根据消息队列的队列个数及消息队列的存储空间在所述目标集群中创建对应个数的消息队列,并为新创建的所述消息队列自动匹配所述队列ID;将所述队列ID在数据库中同步更新,并通过所述Console界面显示。

作为一可选实施例,所述分布式消息管理平台,还包括:消息中间件;

所述Console界面接收用户提交的用户创建消息,并创建新用户,在新用户创建成功的同时,所述Console界面同步发出消息队列创建消息至所述消息中间件;

所述消息中间件将所述消息队列创建消息发送至所述Service;

所述Service根据所述集群名称在数据库中查询该所述集群名称对应的所述秘钥信息,并根据所述秘钥信息在至少两个所述集群中确定所述目标集群,根据消息队列的队列个数及消息队列的存储空间在所述目标集群中创建对应个数的消息队列,并为新创建的所述消息队列自动匹配所述队列ID;将所述队列ID在数据库中同步更新,并将所述队列ID发送至所述消息中间件;

所述消息中间件将所述队列ID发送至所述Console界面;

所述Console界面显示所述队列ID。

作为一可选实施例,所述分布式消息管理平台还包括conn,所述数据接入端口包括Java-sdk端口,所述Java-sdk端口通过所述conn与所述Service通讯;

所述Java-sdk端口接收用户提交的所述业务消息至所述conn;

所述conn将所述业务消息发送至所述Service;

所述Service根据所述业务消息中的所述秘钥信息在至少两个所述集群中确定目标集群,查询数据库中所述目标集群的集群IP,并将所述集群IP发送至所述Java-sdk端口;

所述Java-sdk端口根据所述集群IP,发送所述业务消息至所述目标集群,并根据所述业务消息中的所述队列ID在所述目标集群中确定目标队列,将所述业务数据保存到所述目标集群中的所述目标队列中。

作为一可选实施例,所述分布式消息管理平台,还包括:消息中间件;

所述Java-sdk端口接收用户提交的所述业务消息至所述conn;

所述conn将所述业务消息发送至所述消息中间件;

所述消息中间件将所述业务消息发送至所述Service;

所述Service根据所述业务消息中的所述秘钥信息在至少两个所述集群中确定目标集群,查询数据库中所述目标集群的集群IP,并将所述集群IP发送至所述Java-sdk端口;

所述Java-sdk端口根据所述集群IP,发送所述业务消息至所述目标集群,并根据所述业务消息中的所述队列ID在所述目标集群中确定目标队列,将所述业务数据保存到所述目标集群中的所述目标队列中,目标队列信息发生变化;所述目标队列信息包括队列可用存储空间、队列访问时间;

所述集群将所述目标队列信息发送至所述Service;

所述Service将所述目标队列信息在数据库中同步更新,并将所述目标队列信息发送至所述消息中间件;

所述消息中间件将所述目标队列信息发送至所述Console界面;

所述Console界面显示所述目标队列信息。

作为一可选实施例,所述分布式消息管理平台还包括消息中间件,所述数据接入端口还包括open-api端口;

所述open-api端口接收用户提交的所述业务消息,并将所述业务消息发送至所述消息中间件;

所述消息中间件将所述业务消息发送至所述Service;

所述Service根据所述业务消息中的所述秘钥信息在至少两个所述集群中确定目标集群,根据所述队列ID在所述目标集群中确定目标队列,并将所述业务数据保存到所述目标集群中的所述目标队列中,目标队列信息发生变化;所述目标队列信息包括队列可用存储空间、队列访问时间;

所述集群将所述目标队列信息发送至所述Service;

所述Service将所述目标队列信息在数据库中同步更新,并将所述目标队列信息发送至所述消息中间件;

所述消息中间件将所述目标队列信息发送至所述Console界面;

所述Console界面显示所述目标队列信息。

为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。

上述实施例的装置用于实现前述任一实施例中相应的分布式消息架构管理平台,并且具有相应的方法实施例的有益效果,在此不再赘述。

基于同一发明构思,与上述任意实施例方法相对应的,本说明书一个或多个实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的分布式消息架构管理平台。

图10示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。

处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。

存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。

输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。

通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。

总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。

需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。

上述实施例的电子设备用于实现前述任一实施例中相应的分布式消息架构管理平台,并且具有相应的方法实施例的有益效果,在此不再赘述。

基于同一发明构思,与上述任意实施例方法相对应的,本说明书一个或多个实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的分布式消息架构管理平台。

本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。

上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的分布式消息架构管理平台,并且具有相应的方法实施例的有益效果,在此不再赘述。

所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本说明书一个或多个实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。

另外,为简化说明和讨论,并且为了不会使本说明书一个或多个实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本说明书一个或多个实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本说明书一个或多个实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本说明书一个或多个实施例。因此,这些描述应被认为是说明性的而不是限制性的。

尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。

本说明书一个或多个实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。

相关技术
  • 一种分布式消息架构管理方法、平台及电子设备
  • 一种基于多架构容器云平台的存储卷管理方法及相关组件
技术分类

06120112437712