apache-kafka - Kafka - 顺序 I/O
问题描述
我正在阅读一些文章,以更好地了解 Kafka 比其他消息传递系统更快的原因
除了 Zero On Copy 之外的原因之一是 Sequential IO - 这听起来令人兴奋。但是,一些跟进问题。
- 在所有情况下,顺序 IO 都像寻求偏移量吗?在寻求偏移的情况下,它不涉及某种随机搜索访问吗?
解决方案
在 Kafka 中,我们通常在消费者启动期间寻求偏移量,之后的每个轮询都会依次读取消息。
因此,如果寻找偏移量是随机的,它只会在启动期间发生而不是之后发生,即它只有一次。后续轮询始终是顺序的。因此,它只是之后的顺序访问。
例如,您可能会seek()
多次调用您的程序,但这不是至少在生产中使用的。因为为了获取记录,您可能有任何方式poll()
总是从给定的偏移量顺序读取消息。
推荐阅读
- google-home - 有没有办法创建一个“Action on Google”来回答“Google play X radio”并实际播放流?
- c# - 实例化一个空的 SearchResultCollection
- node.js - 尽管配置,Cypress.io 不采用 index.js
- amazon-web-services - 步骤功能:等待 - 它可以持续多长时间?
- qt - 中继器更新时保持对 QML TextInput 的关注
- powershell - 仅处理文件夹权限不等于的邮箱
- javascript - 从 Firefox 中的成功打印(不取消)返回时,如何重定向到特定的 url?
- python-applymap - 从段落中获取单词的最大长度
- vba - 如何将文本框中的日期插入 Microsoft Access 的查询中?
- java - JTextArea 上的自动文本格式设置