# Zcccccy-RocketMQ5.0 **Repository Path**: Zcccccy/zcccccy-rocketmq5.0 ## Basic Information - **Project Name**: Zcccccy-RocketMQ5.0 - **Description**: Spring Boot对接RocketMQ5.0 - **Primary Language**: Java - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 2 - **Created**: 2024-01-30 - **Last Updated**: 2025-06-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #
Spring Boot对接RocketMQ5.0
### 安装RocketMQ5.0(官网方法) ##### 1.下载RocketMQ5.0 RocketMQ 的安装包分为两种,二进制包和源码包。 点击这里 [下载](https://dist.apache.org/repos/dist/release/rocketmq/5.1.4/rocketmq-all-5.1.4-source-release.zip) Apache RocketMQ 5.1.4的源码包。你也可以从 [这里](https://dist.apache.org/repos/dist/release/rocketmq/5.1.4/rocketmq-all-5.1.4-bin-release.zip) 下载到二进制包。二进制包是已经编译完成后可以直接运行的,源码包是需要编译后运行的。 解压5.1.4的源码包并编译构建二进制可执行文件。 ```shell $ 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 $ cd distribution/target/rocketmq-5.1.4/rocketmq-5.1.4 ``` ##### 2.启动NameServer ```shell ### 启动namesrv $ nohup sh bin/mqnamesrv & ### 验证namesrv是否启动成功 $ tail -f ~/logs/rocketmqlogs/namesrv.log The Name Server boot success... ``` 如果自己服务器内存不够大的话可以更改 bin/runserver.sh 中内存信息 ##### 3.启动Broker+Proxy ```shell ### 先启动broker $ nohup sh bin/mqbroker -n localhost:9876 --enable-proxy & ### 验证broker是否启动成功, 比如, broker的ip是192.168.1.2 然后名字是broker-a $ tail -f ~/logs/rocketmqlogs/proxy.log The broker[broker-a,192.169.1.2:10911] boot success... ``` 至此,一个单节点副本的 RocketMQ 集群已经部署起来了,我们可以利用脚本进行简单的消息收发。 ##### 4.关闭服务 ```shell $ sh bin/mqshutdown broker The mqbroker(36695) is running... Send shutdown request to mqbroker with proxy enable OK(36695) $ sh bin/mqshutdown namesrv The mqnamesrv(36664) is running... Send shutdown request to mqnamesrv(36664) OK ``` ## 创建Topic 主题必须有消息类型,且只能接收相对应消息类型的消息 Normal:普通消息,消息本身无特殊语义,消息之间也没有任何关联。 FIFO:顺序消息,Apache RocketMQ 通过消息分组MessageGroup标记一组特定消息的先后顺序,可以保证消息的投递顺序严格按照消息发送时的顺序。 Delay:定时/延时消息,通过指定延时时间控制消息生产后不要立即投递,而是在延时间隔后才对消费者可见。 Transaction:事务消息,Apache RocketMQ 支持分布式事务消息,支持应用数据库更新和消息调用的事务一致性保障。 ###### 普通消息 ```shell sh mqadmin updateTopic -n