RocketMQ学习第一天

一、MQ介绍

MQ的优势:

1、业务解耦(降低耦合度)
2、异步提速(降低同步请求的时间)
3、削峰填谷(峰值降低,平稳延续到低谷)

MQ的劣势:

1、保证MQ高可用
2、如何避免重复消费,遗漏消费
3、复杂度增加,保证处理一致性

MQ技术选型:

ActiveMQ java实现,处理万级,ms级别,最早但是速度慢
RabbitMQ erlang实现,处理万级,us级别,速度快
RocketMQ java实现,处理十万级,ms级别,功能和扩展性强
Kafka scala实现,处理十万级,ms级别,功能少,适用于大数据

二、RocketMQ工作原理:

image.png

三、RocketMQ在Windows下的安装启动:

解压rocketmq-all-4.8.0-bin-release.zip

配置环境变量
image.png

image.png
启动NameServer(bin目录下)
E:\RocketMQ\rocketmq-all-4.8.0-bin-release\bin>mqnamesrv.cmd
NameServer启动成功
启动BrokerServer(bin目录下)
E:\RocketMQ\rocketmq-all-4.8.0-bin-release\bin>mqbroker.cmd -n localhost:9876 autoCreateTopicEnable=true

如果出现以上报错需要在runbroker.cmd中的%CLASSPATH%加英文双引号
set "JAVA_OPT=%JAVA_OPT% -cp "%CLASSPATH%""

BrokerServer启动成功

本地QuickStart测试
E:\RocketMQ\rocketmq-all-4.8.0-bin-release\bin>tools.cmd  org.apache.rocketmq.example.quickstart.Producer
image.png

报错service not available now, maybe disk full的解决办法:
1.先删除掉/store/commitlog文件夹下的没用的日志文件
2.编辑/conf/2m-2s-async/broker-a.properties文件,添加 diskMaxUsedSpaceRatio=98 磁盘占用到98%才会报错

E:\RocketMQ\rocketmq-all-4.8.0-bin-release\bin>tools.cmd  org.apache.rocketmq.example.quickstart.Consumer
image.png

你可能感兴趣的:(RocketMQ学习第一天)