RocketMQ5.0 搭建 Name Server And Broker+Proxy 同进程部署、搭建RocketMQ控制台图形化界面

简介: RocketMQ5.0 搭建 Name Server And Broker+Proxy 同进程部署、搭建RocketMQ控制台图形化界面

前言


RocketMQ5.0中的几个角色NameServer、Broker 和 Proxy,它们的作用如下:


  • NameServer: NameServer 是 RocketMQ 的名称服务器,负责管理消息队列和消费者组。
  • Broker:Broker 是 RocketMQ 的消息代理服务器,负责接收、处理和存储消息。
  • Proxy: Proxy 是 RocketMQ 的代理服务器,用于扩展消息代理服务器的性能和容量。Proxy 可以将消息路由 到多个 Broker 上,以实现负载均衡和容错。Proxy 还提供了一些接口,如队列管理、消费者管理、配置管理 等,供客户端使用。

总之,NameServer、Broker 和 Proxy 都是 RocketMQ 分布式消息代理服务器的重要组成部分,它们共同协作,实现消息的传输和处理。


在5.0版本中 Proxy 和 Broker 可以根据实际诉求可以分为 Local 模式和 Cluster 模式。


没有特殊的需求或者遵循从早期版本平滑升级的思路,可以选用Local模式。I


  • 在 Local 模式下,Broker 和 Proxy 是同进程部署,只是在原有 Broker 的配置基础上新增 Proxy 的简易配置就可以运行。


  • 在 Cluster 模式下,Broker 和 Proxy 分别部署,即在原有的集群基础上,额外再部署 Proxy 即可。




RocketMQ5.0 搭建


系统要求
64位操作系统,推荐 Linux/Unix/macOS
64位 JDK 1.8+




下载安装Apache RocketMQ


下载源码编译(Apache RocketMQ 5.1.4的源码包)

下载二进制包(可直接运行



安装启动


二进制包安装启动

找到 bin 目录下的 mqnamesrv 和 mqbroker,分别启动 NameServer 和 Broker

### name server 默认端口 9876
nohup sh bin/mqnamesrv &
### broker server 绑定name server
nohup sh bin/mqbroker -n localhost:9876 &




源码包编译安装


这里使用MacOS环境源码包编译安装

解压源码包

unzip rocketmq-all-5.1.4-source-release.zip


编译源码包

cd rocketmq-all-5.1.4-source-release/
mvn -Prelease-all -DskipTests -Dspotbugs.skip=true clean install -U


编译完成后,进入distribution/target/rocketmq-5.1.4/rocketmq-5.1.4目录

cd distribution/target/rocketmq-5.1.4/rocketmq-5.1.4




启动NameServer


nohup sh bin/mqnamesrv &

查看日志

tail -f ~/logs/rocketmqlogs/namesrv.log



启动Broker+Proxy

nohup sh bin/mqbroker -n localhost:9876 --enable-proxy &

查看日志

验证broker是否启动成功, 比如, broker的ip是192.168.1.2 然后名字是broker-a

tail -f ~/logs/rocketmqlogs/proxy.log




搭建RocketMQ控制台图形化界面


RocketMQ Dashboard 是 RocketMQ 的管控利器,为用户提供客户端和应用程序的各种事件、性能的统计信息,支持以可视化工具代替 Topic 配置、Broker 管理等命令行操作。


功能概览

面板

功能

运维

修改nameserver 地址; 选用 VIPChannel

驾驶舱

查看 broker, topic 消息量

集群

集群分布,broker 配置、运行信息

主题

搜索、筛选、删除、更新/新增主题,消息路由,发送消息,重置消费位点

消费者

搜索、删除、新增/更新消费者组,终端,消费详情,配置

消息

消息记录,私信消息,消息轨迹等消息详情




下载


64位操作系统,推荐Linux/Unix/Mac;

64位JDK 1.8+;

Maven 3.2.x;

Idea 直接运行

使用git克隆项目

git clone https://github.com/apache/rocketmq-dashboard.git

idea打开该项目找到src直接运行

Maven spring-boot 运行

mvn spring-boot:run

Maven build and run

cd rocketmq-dashboard
mvn clean package -Dmaven.test.skip=true
java -jar target/rocketmq-dashboard-1.0.1-SNAPSHOT.jar


访问端口

application.properties 配置文件 更改端口




访问 RocketMQ Dashboard


可前往 http://localhost:8080/ 访问 RocketMQ Dashboard


绑定 name server

输入我们启动的 name server 地址 默认端口 9876



最后


本期结束咱们下次再见👋~

🌊 关注我不迷路,如果本篇文章对你有所帮助,或者你有什么疑问,欢迎在评论区留言,我一般看到都会回复的。大家点赞支持一下哟~ 💗

相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
18天前
|
消息中间件 存储 RocketMQ
RocketMQ源码分析之事务消息实现原理下篇-消息服务器Broker提交回滚事务实现原理
RocketMQ源码分析之事务消息实现原理下篇-消息服务器Broker提交回滚事务实现原理
|
12天前
【进程通信】用命名管道模拟server和client之间的通信
【进程通信】用命名管道模拟server和client之间的通信
|
19天前
|
Java 应用服务中间件
解决IDEA tomcat控制台只有server日志
请注意,确保在调试或开发阶段使用更详细的日志级别(如 `DEBUG`或 `TRACE`),但在生产环境中应将其设置为更高的级别以减少日志量。
25 0
|
19天前
|
消息中间件 存储 数据库
RabbitMQ入门指南(二):架构和管理控制台的使用
RabbitMQ是一个高效、可靠的开源消息队列系统,广泛用于软件开发、数据传输、微服务等领域。本文主要介绍了RabbitMQ架构和管理控制台的使用等内容。
80 0
RabbitMQ入门指南(二):架构和管理控制台的使用
|
19天前
|
消息中间件 RocketMQ
在RocketMQ中,消息的读写与生产者消费者的数量以及Broker数量都有关
在RocketMQ中,消息的读写与生产者消费者的数量以及Broker数量都有关
34 1
|
19天前
|
消息中间件 RocketMQ
在RocketMQ 5.1.0版本中,当Broker的`enableControllerMode`配置为true时
在RocketMQ 5.1.0版本中,当Broker的`enableControllerMode`配置为true时
124 1
|
19天前
|
物联网 Serverless
MQTT常见问题之通过mqtt控制台查询不到设备轨迹如何解决
MQTT(Message Queuing Telemetry Transport)是一个轻量级的、基于发布/订阅模式的消息协议,广泛用于物联网(IoT)中设备间的通信。以下是MQTT使用过程中可能遇到的一些常见问题及其答案的汇总:
|
7月前
|
消息中间件
RabbitMq没开启rabbitmq_management插件控制台报错Node statistics not available
RabbitMq没开启rabbitmq_management插件控制台报错Node statistics not available
|
7月前
|
消息中间件 关系型数据库 MySQL
消息中间件系列教程(05) -RabbitMQ -管理控制台的使用
消息中间件系列教程(05) -RabbitMQ -管理控制台的使用
31 1
|
19天前
|
消息中间件 Linux 开发工具
rabbitmq使用docker容器挂载宿主机配置文件时无法访问控制台
rabbitmq使用docker容器挂载宿主机配置文件时无法访问控制台