没有合适的资源?快使用搜索试试~ 我知道了~
RocketMq 学习笔记 包含集群配置、顺序消费、事务、Filter组件配置以及使用,包含demo
资源推荐
资源详情
资源评论
RocketMQ 是一款分布式、队列模型的消息中间件,具有以下特点:>能够保证严格的消息顺
序
提供丰富的消息拉取模式>高效的订阅者水平扩展能力
实时的消息订阅机制
亿级消息堆积能力
Metaq1.x、Metaq2.x,Metaq3.0 以后版本改名,产品名称改为 RocketMQ
选用理由:
强调集群无单点,可扩展,任意一点高可用,水平可扩展。口海量消息堆积能力,消息堆积
后,写入低延迟。
支持上万个队列
消息失败重试机制口消息可查询
开源社区活跃
成熟度(经过双十一考验)
RocketMQ 集群方式
推荐的几种 Broker 集群部署方式,这里的 Slave 不可写,但可读,类似于 Mysql
主备方式。
单个 Master
这种方式风险较大,一旦 Broker
重启或者宕机时,会导致整个服务不可用,不建议线上环境使用。
多 Master 模式
一个集群无 Slave,全是 Master,例如 2 个 Master 或者 3 个 Master
优点:配置简单,单个 Master 宕机或重启维护对应用无影响,在磁盘配置为
RAID10 时,即使机器宕机不可恢复情况下,由与 RAID10
磁盘非常可靠,消息也不会丢(异步刷盘丢失少量消息,同步刷盘一条不丢)
。性能最高。
缺点:单台机器宕机期间,这台机器上未被消费的消息在机器恢复之前不可订
阅,消息实时性会受到受到影响。
### 先启动 NameServer
### 在机器 A,启动第一个 Master
### 在机器 B,启动第二个 Master
多 Master 多 Slave 模式,异步复制
每个 Master 配置一个 Slave,有多对 Master-Slave,HA
采用异步复制方式,主备有短暂消息延迟,毫秒级。
优点:即使磁盘损坏,消息丢失的非常少,且消息实时性不会受影响,因为
Master 宕机后,消费者仍然可以从 Slave
消费,此过程对应用透明。不需要人工干预。性能同多 Master 模式几乎一样。
缺点:Master 宕机,磁盘损坏情况,会丢失少量消息。
### 先启动 NameServer
### 在机器 A,启动第一个 Master
### 在机器 B,启动第二个 Master
### 在机器 C,启动第一个 Slave
### 在机器 D,启动第二个 Slave
多 Master 多 Slave 模式,同步双写
每个 Master 配置一个 Slave,有多对 Master-Slave,HA
采用同步双写方式,主备都写成功,向应用返回成功。
优点:数据与服务都无单点,Master 宕机情况下,消息无延迟,服务可用性与
数据可用性都非常高
缺点:性能比异步复制模式略低,大约低 10%左右,发送单个消息的 RT
会略高。目前主宕机后,备机不能自动切换为主机,后续会支持自动切换功能
。
### 先启动 NameServer
### 在机器 A,启动第一个 Master
### 在机器 B,启动第二个 Master
### 在机器 C,启动第一个 Slave
### 在机器 D,启动第二个 Slave
以上 Broker 与 Slave 配对是通过指定相同的 brokerName 参数来配对,Master
的 BrokerId 必须是 0,Slave 的 BrokerId 必须是大与 0 的数。另外一个 Master
下面可以挂载多个 Slave,同一 Master 下的多个 Slave 通过指定不同的
BrokerId 来区分。
RocketMQ 部署【双 Master 方式】
两个节点 121 和 122 为例
Hosts 添加信息
121、122 都执行
121 下
121、122 两台服务器的底层实现通信使用的是 netty,使用 的是 nameServer 这个组件真正
存储数据的 broker 的 IP 是 master ,也可以使用四台机器,两台部署 master 两台部署
server,一般是 nameServer 和 master 部署在一起,这样就已经足够
122 也是一样
重启网卡(121、122 一样)
两台服务器 ping 一下
121
查看是否能 ping 通
上传 MQ 解压并解压
两台机器都一样
解压到 user/local 下
cd.. 切换到 user/local 下 ll
创建软链接(121、122 同步执行)
执行之后 ll 看到一个软连接,连接到 rocketMq 下
创建两台机器的存储路径
在两台机器上创建文件夹
mkdir /usr/local/rocketmq/store
mkdir /usr/local/rocketmq/store/commitlog
mkdir /usr/local/rocketmq/store/consumequeue
mkdir /usr/local/rocketmq/store/index
剩余74页未读,继续阅读
资源评论
JAVA代码搬运工
- 粉丝: 572
- 资源: 9
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于ArcEngine的GIS数据处理系统.zip
- (源码)基于JavaFX和MySQL的医院挂号管理系统.zip
- (源码)基于IdentityServer4和Finbuckle.MultiTenant的多租户身份认证系统.zip
- (源码)基于Spring Boot和Vue3+ElementPlus的后台管理系统.zip
- (源码)基于C++和Qt框架的dearoot配置管理系统.zip
- (源码)基于 .NET 和 EasyHook 的虚拟文件系统.zip
- (源码)基于Python的金融文档智能分析系统.zip
- (源码)基于Java的医药管理系统.zip
- (源码)基于Java和MySQL的学生信息管理系统.zip
- (源码)基于ASP.NET Core的零售供应链管理系统.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功