【发布时间】:2018-03-30 18:40:07
【问题描述】:
在我的拓扑中,将元组从 spout 传输到 bolt 或从 bolt 传输到 bolt 时,我看到大约 1 到 2 ms 的延迟。我正在使用纳秒时间戳计算延迟,因为整个拓扑在单个工作人员内运行。 拓扑在集群中运行,该集群在具有生产能力的硬件中运行。
据我了解,在这种情况下,不需要对元组进行序列化/反序列化,因为所有内容都在单个 JVM 中。我已将大多数 spout 和 bolts 的并行提示设置为 5,并且 spout 仅以每秒 100 个的速率产生事件。我不认为高延迟是由于事件排队造成的,因为我没有看到延迟随着时间的推移而增加。也没有增加内存。日志级别设置为 ERROR。 CPU 使用率在 200 到 300 % 之间。
什么可能导致这种延迟?我原以为只有少数我们可以进行元组传输。
【问题讨论】:
标签: apache-storm