kafka详解(二)-
Kafka 有多快呢?我们可以使用 OpenMessaging Benchmark Framework 测试框架方便地对 RocketMQ、Pulsar、Kafka、RabbitMQ 等消息系统进行对比测试,因为暂时没有测试条件(后续补上),我直接用这篇文章的测试结果(Benchmarking Kafka vs. Pulsar vs. RabbitMQ: Which is Fastest?),可以看到,在某种条件下,Kafka 写入速度比 RabbitMQ 快 15 倍,比 Pulsar 快 2 倍,在最高吞吐量下仍保持低延迟。那么,为什么 Kafka 可以那么快呢?这里我先简单总结,后面会展开分析。
1. **从磁盘中顺序读写 event**。
2. **通过批处理减少大量小 I/O**。
3. **从文件到 socket 之间数据零拷贝**。
4. **基于分区的横向扩展**。