Batching(对消息进行分组)和 compression(压缩数据)是实现 Kafka 高吞吐量的关键技术——减少单条消息的开销以及网络/存储成本。理解这些技术有助于实现 Kafka 的高性能。
Batching — 对消息进行分组
BATCHING → the producer groups multiple messages into a single BATCH before sending:
→ fewer, larger requests instead of many tiny ones → much higher THROUGHPUT (less
per-request overhead, fewer network round-trips)
→ controlled by: batch.size (batch size limit) + linger.ms (wait time to accumulate a batch)
→ trade-off: slightly higher LATENCY (waiting to batch) for much higher throughput
→ batching is essential for high-throughput producing
