我在Kafka Streaming中进行性能测试。我用Transformer创建了一个简单的Streams API。
.
我正在使用带有10个分区的 inTopic 和带有1个分区的 outTopic 。我看到延迟很好,大约4-6毫秒。但是,我有时会面临潜伏期的突然飙升,甚至达到~60 - 1000毫秒。然后几秒后,它逐渐下降延迟到4-6毫秒。这导致我整个实验的平均延迟为~67 ms。
突然飙升的原因是什么?如果有的话,建议我一些性能调整参数。
注意:我只提供了默认的StreamsConfig。
答案 0 :(得分:1)
产生一定量的消息后,应将数据刷新到磁盘。
这可能会导致您观察到的现象。
请参阅kafka配置的“log.flush.interval.messages”:Link
在生产之后,我不建议您更改此属性以进行改进。您应该更改系统配置:
/proc/sys/vm/dirty_background_ratio
/proc/sys/vm/dirty_ratio
提高自己的msgs flush的效率