Apache RocketMQ™ 是一个统一的消息引擎系统, 也是一个轻量级的数据处理平台. 当你遇到以下类似问题而束手无策时,RocketMQ可以帮助你解决: 重试消息、死信消息、事物消息支持 消息轨迹追踪 消息过滤 IPv6支持 A ...
实验简介Apache RocketMQ™ 是一个统一的消息引擎系统, 也是一个轻量级的数据处理平台. 当你遇到以下类似问题而束手无策时,RocketMQ 可以帮助你解决:
本教程会以如何利用源码编译、打包、部署、实际使用 RocketMQ。 实验实操一、如何下载、编译最新版 RocketMQ (本教程会以如何利用源码编译并打包 RocketMQ 为例,演示如何下载、编译任意版本的 RocketMQ.) 1. 安装 git,jdk, maven 等工具(参考 baidu/google)
2. 下载最新 release 代码(这里以 git 为例,如果没有安装 git 直接从 github release 页面下载)在自己电脑上, 进入命令行, 选择一个保存源码的目录,这里我把源码保存到 /tiger/tmp 为例 2.1 创建代码保存目录(已创建则不操作)并进入代码保存目录:
2.2 克隆代码
2.3 进入源码根目录:
3. 编译和打包源码编译打包成功后, 我们执行:
二、如何部署一个简单的 RocketMQ 集群 (本教程将演示如何利用编译结果,部署一个 1Namesrv + 1Broker 的 RocketMQ 集群) 1. 找到上一章节的编译打包结果cd /tiger/tmp/rocketmq/distribution/target/ ls -l 2. 安装 Namesrv, Broker
mkdir -p /tiger/rocketmq/namesrv1 mkdir -p /tiger/rocketmq/broker1
cp -R /tiger/tmp/rocketmq/distribution/target/rocketmq-4.9.4-SNAPSHOT/rocketmq-4.9.4-SNAPSHOT/* /tiger/rocketmq/namesrv1 cp -R /tiger/tmp/rocketmq/distribution/target/rocketmq-4.9.4-SNAPSHOT/rocketmq-4.9.4-SNAPSHOT/* /tiger/rocketmq/broker1
cd /tiger/rocketmq/ ls -l 3. 修改日志配置、jvm 配置等其他配置
cd /tiger/rocketmq/namesrv1 vim conf/logback_namesrv.xml
cd /tiger/rocketmq/namesrv1
vim bin/runserver.sh
cd /tiger/rocketmq/broker1
vim conf/logback_broker.xml
cd /tiger/rocketmq/broker1
vim bin/runbroker.sh
cd /tiger/rocketmq/namesrv1 nohup sh bin/mqnamesrv &
cd /tiger/rocketmq/broker1 nohup sh bin/mqbroker -n localhost:9876 &
ps -ef | grep rocketmq
export NAMESRV_ADDR=localhost:9876
cd /tiger/rocketmq/broker1
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer
三、如何使用 Java 发送和消费消息 (本教程将简单演示如何使用纯 java client 发送和消费消息。)
步骤 1: 创建 RocetMQ 客户端模板对象: RocketMQTemplate, 并且注入 namesrv 等参数。
继承 RocketMQListener 类,实现 onMessage () 方法即可, demo 代码如下:
|