具体解读零拷贝技能大局说明
Kafka 中存在大量的收集数据耐久化到磁盘(Producer 到 Broker)和磁盘文件通过收集发送(Broker 到 Consumer)的进程。这一进程的机能直接影响 Kafka 的整体吞吐量。 “操纵体系的焦点是内核,独立于平凡的应用措施,可以会见受掩护的内存空间,也有会见底层硬件装备的权限。为了停止用户历程直接操纵内核,担保内核安详,操纵体系将假造内存分别为两部门,一部门是内核空间(Kernel-space),一部门是用户空间(User-space)。 传统的 Linux 体系中,尺度的 I/O 接口(譬喻read,write)都是基于数据拷贝操纵的,即 I/O 操纵会导致数据在内核地点空间的缓冲区和用户地点空间的缓冲区之间举办拷贝,以是尺度 I/O 也被称作缓存 I/O。这样做的甜头是,假如所哀求的数据已经存放在内核的高速缓冲存储器中,那么就可以镌汰现实的 I/O 操纵,但弊端就是数据拷贝的进程,会导致 CPU 开销。 我们把 Kafka 的出产和斲丧简化成如下两个进程来看[2]: 收集数据耐久化到磁盘 (Producer 到 Broker) 磁盘文件通过收集发送(Broker 到 Consumer) (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |