RocketMQ

简介

Apache RocketMQ是一个采用Java语言开发的分布式的消息系统,由阿里巴巴团队开发,与2016年底贡献给 Apache,成为了Apache的一个顶级项目。
在阿里内部,RocketMQ 很好地服务了集团大大小小上千个应用,在每年的双十一当天,更有不可思议的万亿级 消息通过 RocketMQ 流转(在 2017 年的双十一当天,整个阿里巴巴集团通过 RocketMQ 流转的线上消息达到了 万 亿级,峰值 TPS 达到 5600 万),在阿里大中台策略上发挥着举足轻重的作用 。

官方地址:http://rocketmq.apache.org/

组件

1、Producer
消息生产者,负责产生消息,一般由业务系统负责产生消息。
Producer Group 一类 Producer 的集合名称,这类 Producer 通常发送一类消息,且发送逻辑一致。
2、Consumer
消息费者,负责消费消息,一般是后台系统负责异步消费。
Push Consumer 服务端向消费者端推送消息 。
Pull Consumer 消费者端向服务定时拉取消息 。
Consumer Group 一类 Consumer 的集合名称,这类 Consumer 通常消费一类消息,且消费逻辑一致。
3、NameServer
集群架构中的组织协调员。
收集broker的工作情况 。
不负责消息的处理 。
4、Broker
是RocketMQ的核心负责消息的发送、接收、高可用等(真正干活的) 。
需要定时发送自身情况到NameServer,默认10秒发送一次,超时2分钟会认为该broker失效。
5、Topic
不同类型的消息以不同的Topic名称进行区分,如User、Order等
是逻辑概念
Message Queue 消息队列,用于存储消息 。

安装

cd /plxc 
unzip rocketmq-all-4.3.2-bin-release.zip 
cd rocketmq-all-4.3.2-bin-release

#启动nameserver 
bin/mqnamesrv 
#The Name Server boot success. serializeType=JSON 看到这个表示已经提供成功 
#启动broker 
bin/mqbroker -n 172.16.185.55:9876  
#-n 指定nameserver地址和端口 #启动出错 Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000005c0000000, 8589934592, 0) failed; error='Cannot allocate memory' (errno=12)

启动错误,是因为内存不够,导致启动失败,原因:RocketMQ的配置默认是生产环境的配置,设置的jvm的内存 大小值比较大,对于学习而言没有必要设置这么大,测试环境的内存往往都不是很大,所以需要调整默认值。

#调整默认的内存大小参数 
cd bin/ 
vim runserver.sh 
JAVA_OPT="${JAVA_OPT} -server -Xms128m -Xmx128m -Xmn128m -XX:MetaspaceSize=128m XX:MaxMetaspaceSize=128m"
 
cd bin/ 
vim runbroker.sh 
JAVA_OPT="${JAVA_OPT} -server -Xms128m -Xmx128m -Xmn128m"
 
#从新启动测试 
#创建broker配置文件 
vim /plxc/rmq/rmqbroker/conf/broker.conf 
brokerIP1=172.16.55.185 
namesrvAddr=172.16.55.185:9876 
brokerName=broker_plxc_im
#启动broker,通过 -c 指定配置文件 
bin/mqbroker -c /haoke/rmq/rmqbroker/conf/broker.conf 
The broker[vander, 172.16.55.185:10911] boot success. serializeType=JSON and name server is 172.16.55.185:9876  #这样就可以进行访问了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值