这是我参与「第五届青训营 」伴学笔记创作活动的第 13 天
消息队列概述
作用
- 解耦
- 削峰
- 异步
- 日志处理
定义
业界MQ
Kafka
如何使用Kafka
基本概念
不同的业务场景就是一个Topic。
架构
一条消息的自述
高吞吐量下的消息发送机制
- 批量发送
- 数据压缩
Broker
磁盘结构
顺序写
拿到消息:
偏移量索引文件
时间戳索引文件
传统数据拷贝
零拷贝
consumer
Partition如何在consumer组进行消费?
- 手动分配:不能自动容灾,增加消费者时需要进程的启停。
- 自动分配
kafka的缺点
- 数据复制问题
- 重启操作
- 替换、扩容、缩容
- 负载不均衡