我想知道除了设置刷新间隔之外,是否有更好的方法在集群启动和运行时处理从缓存到磁盘的数据刷新率。
不,Kafka只公开刷新间隔配置,以秒为单位 log.flush.interval.ms 或消息数 log.flush.interval.messages .
log.flush.interval.ms
log.flush.interval.messages
刷新机制在Kafka文档的几个部分中有详细介绍:
实际上,Kafka建议禁用显式刷新(这是默认设置):
我们建议使用禁用 应用程序完全同步这意味着依赖背景刷新 由操作系统和卡夫卡自己的背景冲洗完成这提供了 最适合大多数用途:无需调节旋钮,吞吐量高 延迟和完全恢复保证我们普遍认为 复制提供的保证比同步到本地强 但是偏执狂仍然喜欢同时拥有和 仍然支持应用程序级fsync策略。