1.动机 设计 kafka 初衷,作为统一平台处理大公司的实时数据.所以 必须具有如下特性: 支持海量数据 高吞吐量 低延迟(实时性) 支持分区,分布式 容错 2.持久化 kafka 高度依赖 文件系统 存储和缓存消息.通过对磁盘的顺序读写,并借助 OS 层面的 页缓存(page cache),保证优于缓存在内存中或其他结构中. 为何使用磁盘效率仍然很高: 利用磁盘的顺序读写,操作一个文件,将数据追加到文件的末尾.相比于随机读写,效率很高. 利用 OS 层面的页缓存(page cache),顺序…