RocketMQ搭建并测试(windows)
创始人
2025-05-29 16:45:30

 架构及组件说明

name server:注册中心

broker:消息处理

procucer:生成消息

consumer:消费消息

一、下载安装包  

https://rocketmq.apache.org/zh/download

 1、RocketMQ下载

 2、RocketMQ仪表盘下载

二、修改RocketMQ配置参数

将 ocketmq-all-4.9.4-bin-release文件复制到合适的位置

1、修改conf/broker.conf配置

 查询自己IP 

 添加如下配置(IP使用自己的),并保存。

brokerIP1=192.168.31.199
namesrvAddr=192.168.31.199:9876

 2、设置ROCKETMQ_HOME环境变量

文件路径使用自己的

set ROCKETMQ_HOME=D:\ProgramFiles\rocketmq-all-4.9.4-bin-release

 三、启动服务

1、启动Namesrv

在rocketmq文件的bin目录下,进入cmd

start mqnamesrv.cmd

 2、启动Broker

start mqbroker.cmd -n 127.0.0.1:9876  autoCreateTopicEnable=true

 三、启动仪表盘

1、修改配置文件

 2、启动项目

 3、打开仪表盘

http://localhost:8080/#/

 按需修改为中文

 查看消费者(非必须)

 四、分别创建springboot生成者和消费者

1、生产者

创建普通springboot项目,添加依赖

   org.apache.rocketmqrocketmq-spring-boot-starter2.0.1

修改配置文件 

# 应用名称
spring:application:name: rocket-producer
# 应用服务 WEB 访问端口
server:port: 8002
rocketmq:name-server: localhost:9876producer:group: my-group

 创建测试代码

import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;import javax.annotation.Resource;@Component
public class SendMessage {@Resourceprivate RocketMQTemplate rocketMQTemplate;@Scheduled(fixedRate = 5000)public void run(){//发送消息rocketMQTemplate.convertAndSend("test-topic-1", "Hello, World!");}
}

 启动类添加@EnableScheduling注解

 项目目录

2、消费者

创建普通springboot项目,添加依赖

   org.apache.rocketmqrocketmq-spring-boot-starter2.0.1

修改配置文件 

# 应用名称
spring:application:name: rocket-consumer
server:port: 8001rocketmq:name-server: localhost:9876

 创建测试代码


import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
import org.apache.rocketmq.spring.core.RocketMQListener;
import org.springframework.stereotype.Service;@Service
@RocketMQMessageListener(topic = "test-topic-1", consumerGroup = "my-consumer_test-topic-1")
class MyConsumer1 implements RocketMQListener {/***需要注意的是,onMessage()封装了ACK机制,消费者往外抛异常时,RocketMQ认为消费失败,重新发送该条消息,否则默认消费成功*/@Overridepublic void onMessage(String s) {System.out.println(s);}
}

 项目目录

 五、测试

1、启动生产者、消费者

 接受消息正常

 2、查看控制台

 

 

相关内容

热门资讯

科森科技遭监管处罚 涉信披违规... 中经记者 颜世龙 北京报道11 月 21 日,昆山科森科技股份有限公司(以下简称“科森科技”,603...
比特币闪崩跌破8.2万美元,瑞... 比特币继续崩跌,正走向2022年以来最差单月表现。瑞银警告称,市场可能需要经历一轮"彻底洗盘",才能...
面对AI泡沫质疑,谷歌AI基建... 谷歌云AI基础设施负责人Amin Vahdat在11月6日的全员会议上透露,为了满足对人工智能服务的...
AI导致失业?美国四分之一失业... 拥有四年制大学学位的美国人如今占美国失业总人数的创纪录的25%,凸显今年白领岗位招聘明显放缓。由于美...
高盛对冲基金负责人:美股出现多... 高盛合伙人、高盛跟踪对冲基金部门的全球负责人Tony Pasquariello认为,美国股市已出现多...