1.顺序读写
kafka的消息是不断追加到文件中的,这个特性使kafka可以充分利用磁盘的顺序读写性能,
顺序读写不需要硬盘磁头的寻道时间,只需要很少的扇区时间,所以速度远快于随机读写。
2.零拷贝
Kafka高吞吐量Q的原因其中有个重要技术就是Zero-Copy(零拷贝)系统调用机制
3.批量发送
kafka允许批量发送消息,producer发送消息的时候,可以将消息缓存在本地,等到固定条件再发
送到kafka
消息条数满足固定条数
一段时间发送一次数据压缩
kafka还支持对消息集合进行压缩,producer可以通过GZIP或Snappy格式对消息集合进行压缩,
压缩的好处就是减少传输数据量,减轻网络传输压力
4.分区
5.高并发
支持数千个客户端同时读写
6.高吞吐量、低延迟
kafka每秒可以处理几十万条消息,它的延迟最低只有几毫秒