【RocketMQ入门】

RocketMQ入门

RocketMQ是阿里巴巴开源的分布式消息中间件,现在是Apache的一个顶级项目。在阿里内部使用非常

广泛,已经经过了"双11"这种万亿级的消息流转。

RocketMQ环境搭建

接下来我们先在linux平台下安装一个RocketMQ的服务

环境准备

下载RocketMQ

http://rocketmq.apache.org/release_notes/release-notes-4.4.0/

环境要求

Linux 64位操作系统

64bit JDK 1.8+

安装RocketMQ

1 上传文件到Linux系统

[root@xinyaofeng rocketmq]# ls /usr/local/src/
rocketmq-all-4.4.0-bin-release.zip

2 解压到安装目录

[root@xinyaofeng src]# unzip rocketmq-all-4.4.0-bin-release.zip
[root@xinyaofeng src]# mv rocketmq-all-4.4.0-bin-release ../rocketmq

![#### **外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://i-blog.csdnimg.cn/direct/46c9e624c3294a4a8c61ca2a49b9fb51.png)

启动RocketMQ

1切换到安装目录

2 启动NameServer

[root@xinyaofeng rocketmq]# nohup ./bin/mqnamesrv &
# 只要进程不报错,就应该是启动成功了,可以查看一下日志
[root@xinyaofeng rocketmq]# tail -f /root/logs/rocketmqlogs/namesrv.log

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

3 启动Broker

\# 编辑bin/runbroker.sh 和 bin/runserver.sh文件,修改里面的
\# JAVA_OPT="${JAVA_OPT} -server -Xms8g -Xmx8g -Xmn4g"
\# 为JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m"
[root@xinyaofeng rocketmq]# nohup bin/mqbroker -n localhost:9876 &
[root@xinyaofeng rocketmq]# tail -f /root/logs/rocketmqlogs/broker.log

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

测试RocketMQ

1 测试消息发送

[root@xinyaofeng rocketmq]# export NAMESRV_ADDR=localhost:9876
[root@xinyaofeng rocketmq]# bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

2 测试消息接收

[root@xinyaofeng rocketmq]# export NAMESRV_ADDR=localhost:9876
[root@xinyaofeng rocketmq]# bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

关闭RocketMQ
[root@xinyaofeng rocketmq]# bin/mqshutdown broker
[root@xinyaofeng rocketmq]# bin/mqshutdown namesrv

RocketMQ的架构及概念

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如上图所示,整体可以分成4个角色,分别是:NameServerBrokerProducerConsumer

Broker(邮递员):Broker是RocketMQ的核心,负责消息的接收,存储,投递等功能

**NameServer(邮局)😗*消息队列的协调者,Broker向它注册路由信息,同时Producer和Consumer

向其获取路由信息Producer(寄件人)消息的生产者,需要从NameServer获取Broker信息,然后与Broker建立连接,向Broker发送消息

Consumer(收件人) :消息的消费者,需要从NameServer获取Broker信息,然后与Broker建立连接,从Broker获取消息

**Topic(地区)😗*用来区分不同类型的消息,发送和接收消息前都需要先创建Topic,针对Topic来发送

和接收消息Message Queue(邮件)为了提高性能和吞吐量,引入了Message Queue,一个Topic可

以设置一个或多个Message Queue,这样消息就可以并行往各个Message Queue发送消息,消费

者也可以并行的从多个Message Queue读取消息

**Message:**Message 是消息的载体。

Producer Group:生产者组,简单来说就是多个发送同一类消息的生产者称之为一个生产者组。

Consumer Group:消费者组,消费同一类消息的多个 consumer 实例组成一个消费者组。

RocketMQ控制台安装

1 下载

\# 在git上下载下面的工程 rocketmq-console-1.0.0
https://github.com/apache/rocketmq-externals/releases

2 修改配置文件

\# 修改配置文件 rocketmq-console\src\main\resources\application.properties
server.port=7777 #项目启动后的端口号
rocketmq.config.namesrvAddr=192.168.109.131:9876 #nameserv的地址,注意防火墙要开启
9876端口

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

3 打成jar包,并启动

\# 进入控制台项目,将工程打成jar包
mvn clean package -Dmaven.test.skip=true
\# 启动控制台
java -jar target/rocketmq-console-ng-1.0.0.jar

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

启动webUI

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

4 访问控制台

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值