RocketMQ介绍与部署

article/2025/6/27 22:42:50

RocketMQ介绍

MQ:MessageQueue,消息队列。
MQ的作⽤主要:

  • 异步能提⾼系统的响应速度、吞吐量。
  • 解耦:服务之间进⾏解耦,才可以减少服务之间的影响。解耦后可以实现数据分发,⽣产者发送⼀个消息后,可以由⼀个或者多个消费者进⾏消费,并且消费者的增加或者减少对⽣产者没有影响。
  • 削峰:以稳定的系统资源应对突发的流量冲击。

RocketMQ部署

Binary 下载

RocketMQ官网

修改默认配置

测试环境配置不高,修改choose_gc_options函数内的jvm相关参数

vim bin/runserver.sh

修改choose_gc_log_directory下一行的jvm相关参数

vim bin/runbroker.sh

启动

启动NameServer

nohup bin/mqnamesrv &

启动Broker

  • 先修改环境变量,让Broker知道NameServer的地址端口
vim ~/.bash_profileexport NAMESRV_ADDR='localhost:9876'source ~/.bash_profile
  • 启动Broker
nohup bin/mqbroker &

消息测试

  • 生产消息
 bin/tools.sh org.apache.rocketmq.example.quickstart.Producer 
  • 消费消息
bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

搭建Java客户端项目

  • 在pom.xml中引⼊以下核⼼依赖
<dependency><groupId>org.apache.rocketmq</groupId><artifactId>rocketmq-client</artifactId><version>对应的服务端的版本</version></dependenc>
  • 创建⼀个简单的消息⽣产者
public class Producer {public static void main(String[] args) throws MQClientException, InterruptedException {//初始化一个消息生产者DefaultMQProducer producer = new DefaultMQProducer("DemoProducer");// 指定nameserver地址producer.setNamesrvAddr("192.168.234.141:9876");//设置发送超时时间和客户端api超时时间producer.setSendMsgTimeout(10000);producer.setMqClientApiTimeout(10000);// 启动消息生产者服务producer.start();for (int i = 0; i < 1000; i++) {try {// 创建消息。消息由Topic,Tag和body三个属性组成,其中Body就是消息内容Message msg = new Message("TopicTest","TagA",("Hello RocketMQ " +i).getBytes(RemotingHelper.DEFAULT_CHARSET));//发送消息,获取发送结果SendResult sendResult = producer.send(msg);System.out.printf("%s%n", sendResult);} catch (Exception e) {e.printStackTrace();Thread.sleep(1000);}}//消息发送完后,停止消息生产者服务。producer.shutdown();}
}
  • 创建⼀个消息消费者
public class Consumer {public static void main(String[] args) throws InterruptedException, MQClientException {//构建一个消息消费者DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("DemoConsumer");//指定nameserver地址consumer.setNamesrvAddr("192.168.234.141:9876");consumer.setConsumeFromWhere(ConsumeFromWhere.CONSUME_FROM_LAST_OFFSET);// 订阅一个感兴趣的话题,这个话题需要与消息的topic一致consumer.subscribe("TopicTest", "*");// 注册一个消息回调函数,消费到消息后就会触发回调。consumer.registerMessageListener(new MessageListenerConcurrently() {@Overridepublic ConsumeConcurrentlyStatus consumeMessage(List<MessageExt> msgs, ConsumeConcurrentlyContext context) {msgs.forEach(messageExt -> {try {System.out.println("收到消息:"+new String(messageExt.getBody(), RemotingHelper.DEFAULT_CHARSET));} catch (UnsupportedEncodingException e) {}});return ConsumeConcurrentlyStatus.CONSUME_SUCCESS;}});//设置客户端api超时时间10000毫秒consumer.setMqClientApiTimeout(10000);//启动消费者服务consumer.start();System.out.print("Consumer Started");}
}

RocketMQ可视化管理服务

  • 源码下载
    官网Dashboard服务下载
  • 编译
 mvn clean package -Dmaven.test.skip=true
  • 修改配置文件
    在jar包所在的⽬录下创建⼀个application.yml配置⽂件
rocketmq: config: namesrvAddrs: - 192.168.65.112:9876
  • 运行
java -jar rocketmq-dashboard-1.0.1-SNAPSHOT.jar 1>dashboard.log 2>&1 &

在这里插入图片描述


http://www.hkcw.cn/article/gwJtOOegxD.shtml

相关文章

BUUCTF[极客大挑战 2019]Secret File 1题解

[极客大挑战 2019]Secret File 1 分析&#xff1a;解题界面1&#xff1a;界面二&#xff1a;界面3&#xff1a; 总结: 分析&#xff1a; 事后来看&#xff0c;这道题主打一个走一步看一步。我们只能从题目的标题中猜到&#xff0c;这道题与文件有关。 解题 界面1&#xff1a…

Nuxt3部署

最近接了一个项目&#xff0c;需要用到 nuxt3 技术来满足甲方所要求的需求&#xff0c;在部署的时候遇到了很多问题&#xff0c;这里我一一给大家讲述部署流程&#xff0c;以及所遇到的坑 打包部署 部署分为俩种方式&#xff1a; 静态(spa)部署 和 ssr部署 静态部署 静态部…

审计- 3- 风险评估:内部控制

1了解被审计单位及其环境 注册会计师应当实施风险评估程序&#xff0c;以了解被审计单位以及环境&#xff0c;从以下几个方面了解&#xff1a; 1.行业状况、法律环境与监管环境以及其他外部因素2.被审计单位的性质 1 所有权结构&#xff1b; 2 治理结构&#xff1b; 3 组织结构…

是否允诺伊朗保留铀浓缩活动?美国再出“罗生门”

当地时间6月2日,据美国阿克西奥斯新闻网报道,有两名知情人士透露,美国5月31日向伊朗提出的核协议提议允许伊朗在一段待定的时间内进行有限的低浓度铀浓缩。这与美高层官员的公开声明相矛盾,此前,美国中东问题特使威特科夫和国务卿鲁比奥已公开表示,美国不会允许伊朗进行铀…

吸引樊振东加盟的德国小城有何魅力 乒坛新焦点

德国小城萨尔布吕肯迎来历史性狂欢。乒乓球大满贯得主樊振东宣布加盟后,萨尔布吕肯乒乓球俱乐部在欧洲乒联冠军联赛男团决赛中以3比1击败杜塞尔多夫,第三次赢得欧冠冠军奖杯。这双重喜讯让这座德法边境小城成为全球乒坛焦点。俱乐部经理和身边好友都表示,樊振东主动加盟俱乐…

工作人员回应漫展上2女童被指衣着暴露 已及时制止并要求更换服装

6月2日,有网友称在中山漫展现场看到两名女童穿着暴露且成人化的服装,并有付费直播等活动。从网传的现场图片中可以看到,在一处临时搭建的简易摄影场地前,两名女童身着连体紧身服,脚上还套有半截丝袜。微信公众号“中山博览中心”于5月27日发布文章介绍,“2025中山AS24端午…

oscp练习 PG Wombo

端口扫描 sudo nmap -Pn -n 192.168.125.69 -sU --top-ports100 --reason22/tcp open ssh OpenSSH 7.4p1 Debian 10deb9u7 (protocol 2.0) | ssh-hostkey: | 2048 09:80:39:ef:3f:61:a8:d9:e6:fb:04:94:23:c9:ef:a8 (RSA) | 256 83:f8:6f:50:7a:62:05:aa:15:…

多维度健康护理:为进行性核上性麻痹患者护航

进行性核上性麻痹&#xff08;PSP&#xff09;是一种罕见的神经系统退行性疾病&#xff0c;主要影响患者的运动、平衡及吞咽等功能。针对 PSP 患者的健康护理&#xff0c;需从多个维度进行精细化管理&#xff0c;以提升患者生活质量。 在日常生活护理中&#xff0c;因患者存在平…

AI助力软件开发 – 豆包+Trae CN开发体验

陈拓 2025/5/30-2025/5/31 1. 概述 1.1 在AI的辅助下怎样快速开发一个软件原型&#xff1f; 在 豆包&#xff08;智能助手&#xff09; 和 Trae CN&#xff08;低代码开发平台&#xff09; 的协同辅助下&#xff0c;开发软件原型的流程将更加高效自动化。 怎样使用“豆包 T…

OpenWrt 搭建 samba 服务器的方法并解决 Windows 不允许访问匿名服务器的方法

文章目录 一、安装所需要的软件二、配置自动挂载三、配置 Samba 服务器四、配置 Samba 访问用户和密码&#xff08;可选&#xff09;新建 Samba 专门的用户添加无密码的 Samba 账户使用root账户 五、解决 Windows 无法匿名访问Samba方案一 配置无密码的Samba账户并启用匿名访问…

ChatOn:智能AI聊天助手,开启高效互动新时代

在当今快节奏的生活中&#xff0c;无论是工作、学习还是日常交流&#xff0c;我们常常需要快速获取信息、整理思路并高效完成任务。ChatOn 正是为满足这些需求而生&#xff0c;它基于先进的 ChatGPT 和 GPT-4o 技术&#xff0c;为用户提供市场上最优秀的中文 AI 聊天机器人。这…

java 多线程

1.创建方式一&#xff1a;继承Thread类来实现 package day04;public class thread_learn {//main方法是主线程public static void main(String[] args) {//4.创建线程对象MyThread t1new MyThread();//5.启动线程,还是调run方法执行的t1.start();for (int i 0; i < 5; i) {…

模型评估相关问题

模型评估相关 评估指标相关AUC的概念&#xff0c;计算过程&#xff1f;除了auc还有什么度量排序结果的指标特异度&#xff08;Specificity&#xff09;F1 scoreKL散度的概念 评估指标相关 AUC的概念&#xff0c;计算过程&#xff1f;除了auc还有什么度量排序结果的指标 AUC&a…

深度剖析:AI 建站的现状、局限与未来展望-AI编程建站实战系列预告优雅草卓伊凡

深度剖析&#xff1a;AI 建站的现状、局限与未来展望-AI编程建站实战系列预告优雅草卓伊凡 在当下科技飞速发展的时代&#xff0c;AI 技术如同一颗璀璨的星辰&#xff0c;在各个领域熠熠生辉&#xff0c;建站领域亦深受其影响。不少人产生了一种错觉&#xff0c;认为 AI 建站已…

审计- 1- 审计概述

1.财务报表审计的概念 财务报表审计是指注册会计师对财务报表是否不存在重大错报提供合理保证&#xff0c;以积极方式提出意见&#xff0c;增强除管理层之外的预期使用者对财务报表信赖的程度。 1.1 审计业务三方关系人 注册会计师对财务报表发表审计意见是注册会计师的责任管…

阿里云服务器-解决宝塔登录不成功

出现问题&#xff1a; This site can’t be reached XX.XX.XXX.XXX took too long to respond. Try: Checking the connection Checking the proxy and the firewall Running Windows Network Diagnostics ERR_CONNECTION_TIMED_OUT 可能是端口未开放 原因&#xff1a;服务器…

机器学习算法:逻辑回归

1. 基础概念 定义&#xff1a; 逻辑回归&#xff08;Logistic Regression&#xff09;是一种用于解决二分类问题的监督学习算法&#xff0c;通过概率预测样本属于某一类别的可能性。 核心特点&#xff1a;输出是概率值&#xff08;0~1&#xff09;&#xff0c;通过阈值&#…

交警系统“新基建”启示录:数据库一体化承载平台从破解困局到筑牢底座

前言 清晨7点&#xff0c;某市主干道的早高峰车流中&#xff0c;一辆套牌车刚刚驶过路口&#xff0c;指挥中心的预警信息已同步推送至执勤民警的警务终端。3分钟后&#xff0c;这辆违法车辆被精准拦截——这一场景的实现&#xff0c;得益于该市交警支队近期完成的核心数据库系统…

Jmeter逻辑控制器、定时器

目录 一、Jmeter逻辑控制器 ①IF(如果)控制器 作用&#xff1a; 位置&#xff1a; 参数介绍&#xff1a; 步骤&#xff1a; ②循环控制器 作用&#xff1a; 位置&#xff1a; 步骤&#xff1a; 线程组属性VS循环控制器 ③ForEach控制器 作用&#xff1a; 位置&am…

PH热榜 | 2025-06-01

1. Zown 标语&#xff1a;人工智能驱动的购房平台 介绍&#xff1a;Zown是唯一一个利用人工智能技术提供全面购房服务的平台。它自动完成 affordability&#xff08;购房能力&#xff09;审核、预批准、智能房源推荐和出价预测等步骤。在这个过程中&#xff0c;您可以将最多达…