图
异步通信
异步解耦
同步问题
同步的问题
消息中间件异步问题
异步方式 消息中间件
消峰填谷
消息分发
常见消息中间件
ActiveMQ
RabbitMQ
Kafka
RocktMQ
运行模型
安装
源码安装
也可以通过Github下载源码
wget下载
也可以拖入进去 到 /usr/local/src 中
cd /usr/local/src/
wget https://archive.apache.org/dist/rocketmq/4.9.3/rocketmq-all-4.9.3-source-release.zip
下载完毕
解压
unzip rocketmq-all-4.9.3-source-release.zip -d /usr/local/src/
cd /usr/local/src/
cd rocketmq-all-4.9.3
mvn -Prelease-all -Dmaven.test.skip=true clean install -U
cd /usr/local/src/rocketmq-all-4.9.3/distribution/target/rocketmq-4.9.3/rocketmq-4.9.3/bin
为了方便 把可执行文件拷贝到local
cp -R rocketmq-4.9.3/ /usr/local/
修改配置参数
vi runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn512m"
vi runserver.sh
启动
启动NameServer
后台运行
cd /usr/local/rocketmq-4.9.3/bin/
nohup ./mqnamesrv &
cd /usr/local/rocketmq-4.9.3/bin/
./mqnamesrv
启动Broker
cd /usr/local/rocketmq-4.9.3/bin/
nohup ./mqbroker -n 127.0.0.1:9876 &
nohup ./mqbroker -n 192.168.202.3:9876 &
查看
netstat -ntlp
jps
关闭服务
./mqshutdown broker
./mqshutdown nameserver
管理控制台安装
安装git
yum install -y git
下载源码
cd /usr/local/src/
git clone https://gitee.com/heshengjun/rocketmq-externals.git
执行Maven构建
cd /usr/local/src/
cd rocketmq-externals/rocketmq-console/
mvn package -Dmaven.test.skip=true
启动管理台
创建apps 存放rocketmq
cd /
mkdir apps
mkdir rocketmq-console
把jar移动这里
cp /usr/local/src/rocketmq-externals/rocketmq-console/target/rocketmq-console-ng-1.0.1.jar /apps/rocketmq-console/
创建application.properties
vi application.properties
server.port=9999
rocketmq.config.namesrvAddr=192.168.202.3:9876
启动
cd /apps/rocketmq-console/
nohup java -jar rocketmq-console-ng-1.0.1.jar &
运行测试程序
设置一个NameServer的地址的环境变量
cd /usr/local/rocketmq-4.9.3/
export NAMESRV_ADDR=127.0.0.1:9876
发送消息 消费消息
bin/tools.sh org.apache.rocketmq.example.quickstart.Producer
bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer