(Mac)RocketMQ的本地安装测试(详细图示)

目录

  • 部署服务 namesrv / broker
    • 下载解压缩
    • 运行 namesrv
    • nohup ./bin/mqnamesrv & 启动命令详解
    • 运行 broker
  • 测试收发消息
    • 运行自带的生产者测试类
    • 运行自带的消费者测试类
  • 部署 Dashboard 可视化
    • 下载打包
    • 运行
    • 访问

部署服务 namesrv / broker

下载解压缩

  1. 官网下载 https://rocketmq.apache.org/download/
    • 我用的 4.9.5 版本(下载 binary 的)
      在这里插入图片描述
  2. 直接解压
unzip rocketmq-all-4.9.5-bin-release.zip

在这里插入图片描述

运行 namesrv

  1. 修改配置文件中jvm参数–内存大小 bin/runserver.sh 。默认给的很大,建议改小点
cd rocketmq-all-4.9.5-bin-release
# 使用 vscode 打开编辑(二选一)
open bin/runserver.sh
# 使用 vim 打开编辑(二选一)
vim bin/runserver.sh

在这里插入图片描述
2. 启动

# 启动 
nohup ./bin/mqnamesrv &
# 查看启动日志
cat nohup.out
# 查看启动的线程
jps

在这里插入图片描述
3. 关闭

# 优雅地关闭
./bin/mqshutdown namesrv
# 暴力关闭
jps
kill xxx

nohup ./bin/mqnamesrv & 启动命令详解

有三种方式都可以启动

  1. ./bin/mqnamesrv
    • 最直接的启动方式,缺点是该终端将被占用,打印日志打印到屏幕,只能新开终端重新输入命令。
  2. ./bin/mqnamesrv &
    • 好一些的启动方式,缺点是不能退出该终端,否则会终止程序,而且有日志还是会打印到屏幕,很乱。
  3. nohup ./bin/mqnamesrv &
    • 完美的启动方式,nohup:英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行,且会将日志打印到当前文件nohup.out

运行 broker

  1. 修改配置文件中jvm参数–内存大小 bin/runbroker.sh 。默认给的很大,建议改小点
# 使用 vscode 打开编辑(二选一)
open bin/runbroker.sh
# 使用 vim 打开编辑(二选一)
vim bin/runbroker.sh

在这里插入图片描述
2. 配置环境变量 NAMESRV_ADDR

vim ~/.zshrc
export NAMESRV_ADDR='localhost:9876'
# 刷新生效
source ~/.zshrc
# 测试是否生效
echo $NAMESRV_ADDR

在这里插入图片描述
3. 修改broker 配置文件,允许自动创建 topic

open conf/broker.confautoCreateTopicEnable = true

在这里插入图片描述
4. 启动

# 启动 
nohup ./bin/mqbroker &
# 查看启动日志
cat nohup.out
# 查看启动的线程
jps

在这里插入图片描述
5. 关闭

./bin/mqshutdown broker

测试收发消息

运行自带的生产者测试类

./bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

在这里插入图片描述

运行自带的消费者测试类

./bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

在这里插入图片描述

部署 Dashboard 可视化

下载打包

  1. 官网下载 https://rocketmq.apache.org/download/,拉到页面最后

在这里插入图片描述
2. 解压缩打成 jar 包

# 解压缩
unzip rocketmq-dashboard-1.0.0-source-release.zip
# 打包
cd rocketmq-dashboard-1.0.0/
mvn clean package -Dmaven.test.skip=true

在这里插入图片描述

运行

  • 需保证 namesrv / broker 已启动
  • 打的jar包在 target 目录下,可直接使用
java -jar target/rocketmq-dashboard-1.0.0.jar

访问

  • http://localhost:8080/
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/9842.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mac苹果电脑卡顿反应慢如何解决?2024最新免费方法教程

苹果电脑以其稳定的性能、出色的设计和高效的操作系统,赢得了广大用户的喜爱。然而,随着时间的推移,一些用户会发现自己的苹果电脑开始出现卡顿、反应慢等问题。这不仅影响使用体验,还会影响工作效率。那么,面对这些问…

FPGA -手写异步FIFO

一,FIFO原理 FIFO(First In First Out)是一种先进先出的数据缓存器,没有外部读写地址线,使用起来非常简单,只能顺序写入数据,顺序的读出数据,其数据地址由内部读写指针自动加1完成&a…

win10无法被远程桌面连接,Win10系统无法被远程桌面连接的原因有哪些

win10无法被远程桌面连接,Win10系统无法被远程桌面连接的原因有哪些? 先,我们需要明确Win10系统无法被远程桌面连接的可能原因。其中,最常见的原因包括:远程桌面功能未启用、网络连接问题、防火墙或安全软件设置不当、…

哪个牌子的电视盒子好用?小编分享最新电视盒子排名

最近电视盒子是大家热议的话题,就目前来看它的地位依然无可替代,但许多朋友硬不知道哪个牌子的电视盒子好用,面对众多品牌和产品究竟要如何选择才是最好的呢?本期小编要分享最新发布的电视盒子排名,看看哪些电视盒子最…

C++ 抽象与封装

一 抽象 抽象实例:时钟 数据抽象: 具有表面当前时间的时、分、秒 行为抽象: 具有设置时间和显示时间两个最基本的功能。 抽象实例:人 数据抽象:姓名、年龄、性别等。 行为抽象: 生物属性:吃…

【线性代数】英语版听课笔记

线性代数 - 北京航天航空大学(英文版)_哔哩哔哩_bilibili 39.concept of vector space in this lecture we will studyvector space, the concept of basis dimension and coordinates 向量空间的维数:向量空间的基底所含向量的…

TCP超时重传机制

一、TCP超时重传机制简介 TCP超时重传机制是指当发送端发送数据后,如果在一定时间内未收到接收端的确认应答,则会认为数据丢失或损坏,从而触发重传机制。发送端会重新发送数据,并等待确认应答。如果在多次重传后仍未收到确认应答&…

车载测试__公司面试题(整理)

案例1: 镁佳 外包岚图汽车 车载测试 区域经理视频面试 1.首先自我介绍一下 2.项目是怎么测的举例说明 3.你是怎么看待加班的 4.你是怎么看待驻场单位 5.是否可以接受外派去做一段时间的技术支持,比如去襄阳,最长一个月。 6.多快能到…

Codigger:优化Vim编辑器的关键是可视化

Vim是一款高度灵活的文本编辑器,以其高效的快捷键和命令行界面而闻名。然而,对于一些初学者来说,Vim的复杂性和强大的功能可能会让他们感到困惑。为了使Vim更易于使用,Codigger引入可视化操作的概念,将原本抽象的、难以…

智慧公厕,运用数据提升公共厕所管理水平!

随着城市人口的增加和生活水平的提高,公共厕所的管理变得越来越重要。传统的厕所管理方式已经无法满足人们对卫生、便利和舒适的需求。而智慧公厕作为新一代公厕管理方式,通过运用数据技术和大数据分析手段,彻底改变了公厕管理的模式&#xf…

C++对象的赋值

同类的对象之间可以互相赋值,即一个对象的值可以赋值给另一个对象。对象之间的赋值通过“”进行。默认就是把一个对象所有非static数据成员的值依次赋值给另一个对象。 对象赋值的一般形式为: 对象名1 对象名2; 注意:对象名1和对象名2必须是属于同一个…

flutter开发实战-GetX响应式状态管理使用

flutter开发实战-GetX响应式状态管理使用 GetX是一个简单的响应式状态管理解决方案。GetX是Flutter的一款超轻、功能强大的解决方案。它将高性能状态管理、智能依赖注入和路由管理快速而实用地结合在一起。这里简单使用一下GetX 一、引入GetX 在工程的pubspec.yaml中引入插件…

信息系统架构模型_1.单机应用模式和客户机/服务器模式

1.单机应用模式(Standalone) 单机应用系统是最简单的软件结构,是指运行在一台物理机器上的独立应用程序。这些软件系统,从今天的软件架构上来讲,是很简单,是标准的单机系统。当然至今,这种复杂的…

电路板维修【二】

【维修一个65W的氮化镓快充头,摔地上就没输出了,看下怎么回事】:https://www.bilibili.com/video/BV1vG411Q7MDvd_source3cc3c07b09206097d0d8b0aefdf07958 对于某些电器,维修之前需要先测量主滤波电容上面有没有存电&#xff0c…

【AMBA Bus ACE 总线 8 -- ICache maintenance】

请阅读【AMBA Bus ACE 总线与Cache 专栏 】 欢迎学习:【嵌入式开发学习必备专栏】 文章目录 ACE ICache maintenanceACE ICache maintenance 图 1-1 当一个OS run 多个cpu的时候,根据调度算法的不同,OS 可以根据调度算法的不同分别 run 在某个具体的CPU上,因此,它们会有…

分布式模式让业务更高效、更安全、更稳定

​🌈 个人主页:danci_ 🔥 系列专栏:《设计模式》 💪🏻 制定明确可量化的目标,坚持默默的做事。 🚀 转载自热榜文章🔥:探索设计模式的魅力:分布式模…

centos7下安装配置nginx

1、下载nginx安装包 wget http://nginx.org/download/nginx-1.8.0.tar.gz 2、安装nginx所需依赖 yum -y install pcre pcre-devel yum -y install zlib zlib-devel yum -y install openssl openssl-devel 3、进入到nginx安装包目录下,解压tar.gz包 cd /home/soft t…

pikachu靶场-全套学习

文章目录 配置pikachu靶场浏览器访问过程burpsuite配置代理hackbar安装使用kali安装中国蚁剑暴力破解cookie简化场景解释各部分含义如何工作 基于表单的暴力破解验证码绕过(On server)验证码绕过(on client)token防爆破? XSS(Cross-Site Scripting跨站脚本攻击 &am…

使用AudioCraft(MusicGen)生成音乐

AudioCraft 是一个 PyTorch 库,用于音频生成的深度学习研究。AudioCraft 包含 AudioGen 和 MusicGen 两个最先进的人工智能生成模型的推理和训练代码,用于生成高质量的音频。 MusicGen 是一种简单可控的音乐生成模型,它使用Meta 20K 小时的授权音乐来进行训练,能够生成与文…

【栈】Leetcode 比较含退格的字符串

题目讲解 844. 比较含退格的字符串 算法讲解 使用栈模拟,但遇到#字符就让栈顶元素出栈,但是在写的过程中有两点需要注意:当#出现在第一个位置,需要特殊处理一下;当栈为空的时候,还出现#字符需要特殊处理…