一、 顺序写入:磁盘性能的极致挖掘
Kafka的高性能本质上源于对磁盘顺序访问的深度优化。
传统随机写入的磁盘操作需要磁头频繁寻道,机械硬盘的随机写性能通常仅为100IOPS左右,而Kafka通过追加日志(Append-Only Log)模式,将所有消息按顺序写入分区文件,使磁盘操作转化为顺序写,机械硬盘的顺序写速度可达100MB/s以上,接近内存随机读写性能。
1.1 页缓存(Page Cache)的妙用
- 写入优化:Kafka的消息并非直接写入磁盘,而是先存入操作系统的页缓存(Page Cache),由系统内核异步刷盘。这种机制使写入延迟从磁盘的毫秒级降低至内存的微秒级,同时避免了JVM堆内存的频繁分配与回收,减少GC压力。
- 读取优化:消费者拉取消息时,优先从页缓存中读取数据,只有在缓存未命中时才访问磁盘。据测试&#