【学习笔记】kafka权威指南——第8章 跨集群数据镜像(7-10章只做了解)

第8章 跨集群数据镜像

8.1 跨集群数据镜像的使用场景

1>区域集群与中心集群:

中心集群会需要区域集群的消息

2>冗余

完全的kafka镜像备用集群

3>云迁移

8.2 多集群架构

8.2.1 跨数据中心通信的一些实现情况

1>高延迟:集群距离越远,延迟越高,主要因为网络跳转

2>有限的带宽

3>高成本:带宽增加很消耗成本

【向远程数据中心生成数据需要增大retry次数并增大缓冲区】

【一个数据中心需要从另一个数据中心获取数据时推荐使用镜像,而不是消费者】

多集群架构原则:

1>每个数据中心至少有一个kafka集群

2>每两个数据中心之间的每个时间仅复制一次

3>尽量从远程中心读取数据,而不是写入

本地数据保存同步至全部数据中心,而应用程序也可以处理所有数据,但需要很好的处理异步数据读取与更新问题

【需处理循环镜像,可以为同一个逻辑topic在两个中心创建A.topic、B.topic,并在一个镜像本地写入A,镜像复制入B,另一个中心则相反】

8.2.4 主备架构

主备存在的问题:

1>数据丢失和不一致性

2>失效备援之后的起始偏移量

3>复制偏移量topic

【0.10.0之后可以使用时间获取偏移量(基于消息的时间),可以在外部存储偏移量映射】

4>在使用备用kafka集群后

一般清理旧的主集群,将已运行的备用集群数据绘制到旧集群上,打成一致性

5>关于集群发现

切换备份时,需切换kafka集群地址,推荐使用DNS映射无痛切换,并重启消费者程序

8.2.5 延展集群

(三个数据中心)

8.3 kafka的MirrorMaker

8.4 其他方案

1>UReplicator:解决多次再平衡问题

2>Confluent的Replicator:解决配置同步与集群管理问题

相关推荐
是隼人27 分钟前
buuctf-pwn bjdctf_2020_babystack2题解 整数溢出(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
KhalilRuan1 小时前
UnityCsReference——笔记
java·开发语言·笔记
电子云与长程纠缠1 小时前
UE5 Lyra PocketWorld进行3D内容UI预览 - 上
开发语言·学习·3d·ue5·游戏引擎
shangwen1231 小时前
食品厂无尘车间装修施工工艺笔记:C型钢吊顶加固方案尚文净化
笔记
210Brian1 小时前
STM32学习笔记(六)EXTI外部中断(下)
笔记·stm32·学习
MartinYeung52 小时前
[论文学习]Latent Fusion Jailbreak: 融合有害与无害表征以诱导大语言模型产生不安全输出
学习·安全·语言模型
星恒随风2 小时前
C++ 哈希详解(二):开放定址、哈希桶与 C++ 哈希表底层实现
c++·笔记·学习·哈希算法·散列表
迪丽热爱2 小时前
每日英语-17
学习
lazy H2 小时前
不同的消息队列有什么区别?Kafka、RabbitMQ、RocketMQ、Pulsar、ActiveMQ 选型对比
后端·中间件·kafka·rabbitmq·rocketmq
2501_926978332 小时前
AGI封锁的物理边界:发现模式决定封锁可行性
人工智能·经验分享·笔记·ai写作·agi