一种基于Rocketmq消息队列大规模集群管理系统技术方案

技术编号:39407978 阅读:16 留言:0更新日期:2023-11-19 16:00
本发明专利技术公开了一种基于Rocketmq消息队列大规模集群管理系统,包括全局NameServer模块、集群管理器模块、跨集群通信代理模块和Web控制台模块;所述全局NameServer模块是一个独立的服务,负责存储和维护多个Rocketmq集群的元数据信息,该模块为分布式协调服务,实现了元数据信息的高可用性和一致性;所述集群管理器模块是一个Web应用,负责对多个Rocketmq集群进行配置、监控、维护和优化;所述跨集群通信代理模块是一个独立的服务,负责实现不同Rocketmq集群之间的消息发布和订阅;所述Web控制台模块是一个Web应用,负责提供一个可视化的用户界面,方便用户对多个Rocketmq集群进行管理和操作。本发明专利技术简化了多个Rocketmq集群的管理复杂度,提高了可维护性;提高了多个Rocketmq集群的资源利用率,降低了成本。降低了成本。降低了成本。

【技术实现步骤摘要】
一种基于Rocketmq消息队列大规模集群管理系统


[0001]本专利技术涉及Rocketmq消息中间件应用
,尤其是一种基于Rocketmq消息队列大规模集群管理系统。

技术介绍

[0002]Rocketmq消息中间件是一种软件系统,用于在分布式应用之间传递消息,实现异步通信、解耦和负载均衡等功能;消息中间件通常提供了发布/订阅、点对点、广播等不同的消息模型,以满足不同的业务场景和需求。
[0003]在现有技术中,rocketmq

dashboard目前还不支持多语言,只有英文界面,不支持跨集群的管理和监控,只能对单个Rocketmq集群进行操作;同时不支持对Rocketmq的高级功能,如流处理、连接器、物联网等进行配置和使用,且不支持对Rocketmq的安全性和权限控制进行设置和管理。因此,针对上述问题提出了一种基于Rocketmq消息队列大规模集群管理系统。

技术实现思路

[0004]本专利技术的目的在于提供一种基于Rocketmq消息队列大规模集群管理系统,具备操作简单的优点,解决了现有的集群管理系统管理复杂度高、资源利用率低以及跨集群通信困难的问题。
[0005]一种基于Rocketmq消息队列大规模集群管理系统,包括全局NameServer模块、集群管理器模块、跨集群通信代理模块和Web控制台模块;
[0006]所述全局NameServer模块是一个独立的服务,负责存储和维护多个Rocketmq集群的元数据信息,该模块为分布式协调服务,实现了元数据信息的高可用性和一致性;
[0007]所述集群管理器模块是一个Web应用,负责对多个Rocketmq集群进行配置、监控、维护和优化;
[0008]所述跨集群通信代理模块是一个独立的服务,负责实现不同Rocketmq集群之间的消息发布和订阅;
[0009]所述Web控制台模块是一个Web应用,负责提供一个可视化的用户界面,方便用户对多个Rocketmq集群进行管理和操作。
[0010]进一步地,所述全局NameServer模块提供了以下接口:
[0011]registerCluster:用于注册一个新的Rocketmq集群,需要提供集群名称和Broker列表作为参数;
[0012]unregisterCluster:用于注销一个已存在的Rocketmq集群,需要提供集群名称作为参数;
[0013]listClusters:用于列出所有已注册的Rocketmq集群,返回集群名称和Broker列表;
[0014]createTopic:用于创建一个新的跨集群Topic,需要提供Topic名称和路由规则作
为参数;路由规则是一个JSON对象,指定了该Topic在不同Rocketmq集群中的分区数和副本数;
[0015]deleteTopic:用于删除一个已存在的跨集群Topic,需要提供Topic名称作为参数;
[0016]updateTopic:用于更新一个已存在的跨集群Topic,需要提供Topic名称和新的路由规则作为参数;
[0017]listTopics:用于列出所有已创建的跨集群Topic,返回Topic名称和路由规则;
[0018]getRouteInfo:用于获取一个指定的跨集群Topic在不同Rocketmq集群中的路由信息,需要提供Topic名称作为参数;路由信息是一个JSON对象,指定了该Topic在不同Rocketmq集群中对应的Broker地址和队列编号。
[0019]进一步地,所述集群管理器模块通过调用全局NameServer模块和各个Rocketmq集群中的Broker模块提供的接口来实现各种功能该模块提供了以下功能:
[0020]集群创建:用于创建一个新的Rocketmq集群,需要提供集群名称、Broker数量、Broker配置等参数;
[0021]集群删除:用于删除一个已存在的Rocketmq集群,需要提供集群名称作为参数;
[0022]集群扩缩容:用于调整一个已存在的Rocketmq集群的Broker数量,需要提供集群名称和新的Broker数量作为参数;
[0023]集群负载均衡:用于优化一个已存在的Rocketmq集群的消息分布和消费情况,需要提供集群名称作为参数;
[0024]集群故障恢复:用于处理一个已存在的Rocketmq集群中出现的故障情况,需要提供集群名称作为参数;
[0025]集群性能分析:用于分析一个已存在的Rocketmq集群的性能指标和瓶颈,需要提供集群名称作为参数。
[0026]进一步地,所述跨集群通信代理模块通过调用全局NameServer模块和各个Rocketmq集群中的Broker模块提供的接口来实现各种功能,该模块提供了以下接口:
[0027]send:用于向一个指定的跨集群Topic发送一条消息,需要提供Topic名称和消息内容作为参数;
[0028]pull:用于从一个指定的跨集群Topic拉取一批消息,需要提供Topic名称、消费者组名、消费者编号、拉取数量等参数;
[0029]push:用于向一个指定的跨集群Topic推送一批消息,需要提供Topic名称、生产者组名、生产者编号、推送数量等参数;
[0030]subscribe:用于订阅一个指定的跨集群Topic,需要提供Topic名称、消费者组名、消费者编号、消费回调等参数;
[0031]unsubscribe:用于取消订阅一个指定的跨集群Topic,需要提供Topic名称、消费者组名、消费者编号等参数。
[0032]进一步地,所述Web控制台模块通过调用全局NameServer模块、集群管理器模块和跨集群通信代理模块提供的接口来实现各种功能,该模块提供了以下功能:
[0033]集群信息展示:用于展示所有已注册的Rocketmq集群的基本信息,包括集群名称、Broker数量、Topic数量、消息量、延迟、错误率等;
[0034]集群操作执行:用于执行对某个指定的Rocketmq集群的操作,包括创建、删除、扩缩容、负载均衡、故障恢复、性能分析等;
[0035]跨集群Topic管理:用于管理所有已创建的跨集群Topic,包括创建、删除、更新、查询等;
[0036]跨集群消息监控:用于监控所有已订阅的跨集群Topic的消息情况,包括发送量、接收量、延迟、错误率等。
[0037]进一步地,该系统包括如下组件:全局的集群管理、单个集群的管理、一个集群管理器、一个跨集群通信代理以及监控管理。
[0038]进一步地,全局的集群管理用于管理多个Rocketmq集群的元数据信息,包含使用团队、利用率、支持条件搜索、监控报警数量等;单个集群的管理用于统一管理一个Rocketmq集群的元数据信息,包括集群名称、Broker列表、Topic列表、路由规则等。
[0039]进一步本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Rocketmq消息队列大规模集群管理系统,其特征在于:包括全局NameServer模块、集群管理器模块、跨集群通信代理模块和Web控制台模块;所述全局NameServer模块是一个独立的服务,负责存储和维护多个Rocketmq集群的元数据信息,该模块为分布式协调服务,实现了元数据信息的高可用性和一致性;所述集群管理器模块是一个Web应用,负责对多个Rocketmq集群进行配置、监控、维护和优化;所述跨集群通信代理模块是一个独立的服务,负责实现不同Rocketmq集群之间的消息发布和订阅;所述Web控制台模块是一个Web应用,负责提供一个可视化的用户界面,方便用户对多个Rocketmq集群进行管理和操作。2.根据权利要求1所述的一种基于Rocketmq消息队列大规模集群管理系统,其特征在于:所述全局NameServer模块提供了以下接口:registerCluster:用于注册一个新的Rocketmq集群,需要提供集群名称和Broker列表作为参数;unregisterCluster:用于注销一个已存在的Rocketmq集群,需要提供集群名称作为参数;listClusters:用于列出所有已注册的Rocketmq集群,返回集群名称和Broker列表;createTopic:用于创建一个新的跨集群Topic,需要提供Topic名称和路由规则作为参数;路由规则是一个JSON对象,指定了该Topic在不同Rocketmq集群中的分区数和副本数;deleteTopic:用于删除一个已存在的跨集群Topic,需要提供Topic名称作为参数;updateTopic:用于更新一个已存在的跨集群Topic,需要提供Topic名称和新的路由规则作为参数;listTopics:用于列出所有已创建的跨集群Topic,返回Topic名称和路由规则;getRouteInfo:用于获取一个指定的跨集群Topic在不同Rocketmq集群中的路由信息,需要提供Topic名称作为参数;路由信息是一个JSON对象,指定了该Topic在不同Rocketmq集群中对应的Broker地址和队列编号。3.根据权利要求1所述的一种基于Rocketmq消息队列大规模集群管理系统,其特征在于:所述集群管理器模块通过调用全局NameServer模块和各个Rocketmq集群中的Broker模块提供的接口来实现各种功能该模块提供了以下功能:集群创建:用于创建一个新的Rocketmq集群,需要提供集群名称、Broker数量、Broker配置等参数;集群删除:用于删除一个已存在的Rocketmq集群,需要提供集群名称作为参数;集群扩缩容:用于调整一个已存在的Rocketmq集群的Broker数量,需要提供集群名称和新的Broker数量作为参数;集群负载均衡:用于优化一个已存在的Rocketmq集群的消息分布和消费情况,需要提供集群名称作为参数;集群故障恢复:用于处理一个已存在的Rocketmq集群中出现的故障情况,需要提供集
群名称作为参数;集群性能分析:用于分析一个已存在的Rocketmq集群的性能指标和瓶颈,需要提供集群名称作为参数。4.根据权利要求1所述的一种基于Rocketm...

【专利技术属性】
技术研发人员:陈克伟李新第
申请(专利权)人:北京比特易湃信息技术有限公司
类型:发明
国别省市:

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

1