|
| 1 | +## Kafka |
| 2 | + |
| 3 | +* [1.为什么要使用 kafka?为什么要使用消息队列?](#1为什么要使用-kafka为什么要使用消息队列) |
| 4 | +* [2.Kafka中的ISR、AR又代表什么?ISR的伸缩又指什么?](#2kafka中的israr又代表什么isr的伸缩又指什么) |
| 5 | +* [3.kafka中的broker 是干什么的?](#3kafka中的broker-是干什么的) |
| 6 | +* [4.kafka中的 zookeeper 起到什么作用?可以不用zookeeper么?](#4kafka中的-zookeeper-起到什么作用可以不用zookeeper么) |
| 7 | +* [5.kafka follower如何与leader同步数据?](#5kafka-follower如何与leader同步数据) |
| 8 | +* [6.什么情况下一个 broker 会从 ISR 中被踢出去?](#6什么情况下一个-broker-会从-isr-中被踢出去) |
| 9 | +* [7.kafka 为什么那么快?](#7kafka-为什么那么快) |
| 10 | +* [8.kafka producer如何优化打入速度?](#8kafka-producer如何优化打入速度) |
| 11 | +* [9.kafka producer 打数据,ack 为 0, 1, -1 的时候代表啥, 设置 -1 的时候,什么情况下,leader 会认为一条消息 commit 了](#9kafka-producer-打数据ack--为-0-1--1-的时候代表啥-设置--1-的时候什么情况下leader-会认为一条消息-commit-了) |
| 12 | +* [10.kafka unclean 配置代表啥?会对 spark streaming 消费有什么影响?](#10kafka--unclean-配置代表啥会对-spark-streaming-消费有什么影响) |
| 13 | +* [11.如果leader crash时,ISR为空怎么办?](#11如果leader-crash时isr为空怎么办) |
| 14 | +* [12.kafka的message格式是什么样的?](#12kafka的message格式是什么样的) |
| 15 | +* [13.kafka中consumer group 是什么概念?](#13kafka中consumer-group-是什么概念) |
| 16 | +* [14.Kafka中的消息是否会丢失和重复消费?](#14kafka中的消息是否会丢失和重复消费) |
| 17 | +* [15.为什么Kafka不支持读写分离?](#15为什么kafka不支持读写分离) |
| 18 | +* [16.Kafka中是怎么体现消息顺序性的?](#16kafka中是怎么体现消息顺序性的) |
| 19 | +* [17.kafka如何实现延迟队列?](#17kafka如何实现延迟队列) |
| 20 | +* [18.什么是消费者组?](#18什么是消费者组) |
| 21 | +* [19.解释下 Kafka 中位移(offset)的作用。](#19解释下-kafka-中位移offset的作用) |
| 22 | +* [20.阐述下 Kafka 中的领导者副本(Leader Replica)和追随者副本 (Follower Replica)的区别。](#20阐述下-kafka-中的领导者副本leader-replica和追随者副本-follower-replica的区别) |
| 23 | +* [21.如何设置 Kafka 能接收的最大消息的大小?](#21如何设置-kafka-能接收的最大消息的大小) |
| 24 | +* [22.监控 Kafka 的框架都有哪些?](#22监控-kafka-的框架都有哪些) |
| 25 | +* [23.Broker 的 Heap Size 如何设置?](#23broker-的-heap-size-如何设置) |
| 26 | +* [24.如何估算 Kafka 集群的机器数量?](#24如何估算-kafka-集群的机器数量) |
| 27 | +* [25.Leader 总是 -1,怎么破?](#25leader-总是--1怎么破) |
| 28 | +* [26.LEO、LSO、AR、ISR、HW 都表示什么含义?](#26leolsoarisrhw-都表示什么含义) |
| 29 | +* [27.Kafka 能手动删除消息吗?](#27kafka-能手动删除消息吗) |
| 30 | +* [28.consumer_offsets 是做什么用的?](#28consumer_offsets-是做什么用的) |
| 31 | +* [29.分区 Leader 选举策略有几种?](#29分区-leader-选举策略有几种) |
| 32 | +* [30.Kafka 的哪些场景中使用了零拷贝(Zero Copy)?](#30kafka-的哪些场景中使用了零拷贝zero-copy) |
| 33 | +* [31.如何调优 Kafka?](#31如何调优-kafka) |
| 34 | +* [32.Controller 发生网络分区(Network Partitioning)时,Kafka 会怎么样?](#32controller-发生网络分区network-partitioning时kafka-会怎么样) |
| 35 | +* [33.Java Consumer 为什么采用单线程来获取消息?](#33java-consumer-为什么采用单线程来获取消息) |
| 36 | +* [34.简述 Follower 副本消息同步的完整流程。](#34简述-follower-副本消息同步的完整流程) |
| 37 | +* [参考资料](#参考资料) |
| 38 | + |
| 39 | + |
1 | 40 | #### 1.为什么要使用 kafka?为什么要使用消息队列? |
2 | 41 |
|
3 | 42 | 缓冲和削峰:上游数据时有突发流量,下游可能扛不住,或者下游没有足够多的机器来保证冗余,kafka在中间可以起到一个缓冲的作用,把消息暂存在kafka中,下游服务就可以按照自己的节奏进行慢慢处理。 |
@@ -284,4 +323,4 @@ Leader 和 Follower 的 HW 值更新时机是不同的,Follower 的 HW 更新 |
284 | 323 |
|
285 | 324 | ### 参考资料 |
286 | 325 | https://blog.csdn.net/qq_28900249/article/details/90346599 |
287 | | -https://www.jianshu.com/p/511962462e58 |
| 326 | +https://www.jianshu.com/p/511962462e58 |
0 commit comments