RocketMQ 是阿里巴巴在2012年开源的分布式消息中间件,目前已经捐赠给 Apache 软件基金会,并于2017年9月25日成为 Apache 的顶级项目。它以其高性能、低延时和高可靠等特性近年来已经也被越来越多的国内企业使用。
1. 从发布版下载并构建
点击 这里 下载4.2.0发行版源代码,也可以点击 这里 下载二进制发行版。
现在执行以下命令来解压4.2.0源版本并构建.
$ unzip rocketmq-all-4.2.0-source-release.zip $ cd rocketmq-all-4.2.0/ $ mvn -Prelease-all -DskipTests clean install -U $ cd distribution/target/apache-rocketmq
2.环境配置
在.bash_profile中配置mq的环境变量
ROCKETMQ_HOME=/Users/sunww/Documents/JAVA/MQ/rocketmq-all-4.2.0-bin-release
3. 启动 Name Server服务
$ nohup sh bin/mqnamesrv & $ tail -f ~/logs/rocketmqlogs/namesrv.log The Name Server boot success...
4. 启动 broker
$ nohup sh bin/mqbroker -n localhost:9876 & $ tail -f ~/logs/rocketmqlogs/broker.log The broker[%s, 172.30.30.233:10911] boot success...
指定broker.conf配置文件:
nohup sh bin/mqbroker -n localhost:9876 -c ./conf/broker.conf &
5.发送和接收消息
在发送/接收消息之前,我们需要告诉客户端服务器的位置。 RocketMQ提供了多种方式来实现这一点。 为了简单起见,我们使用环境变量NAMESRV_ADDR
$ export NAMESRV_ADDR=localhost:9876 $ sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer SendResult [sendStatus=SEND_OK, msgId= ... $ sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer ConsumeMessageThread_%d Receive New Messages: [MessageExt...
6.关闭服务
$ sh bin/mqshutdown broker The mqbroker(36695) is running... Send shutdown request to mqbroker(36695) OK $ sh bin/mqshutdown namesrv The mqnamesrv(36664) is running... Send shutdown request to mqnamesrv(36664) OK