0

我有一个用两个螺栓处理文档的拓扑。在文档完全处理/通过整个拓扑结构后,我需要能够修改存储在 spout 中的数据结构。在进一步了解 Apache Storm 之前,我相信在 spout 中实现的 'ack' 方法仅在拓扑结束时调用。我现在看到需要在每个螺栓中调用“ack”并且感到困惑。

本质上,如果我将自定义代码放在 spout 的“ack”方法中:什么时候执行?每次在螺栓中调用“ack”方法时,或者当整个元组树被确认/每个喷口发出的每个元组一次?

4

1 回答 1

0

spout 中的 ack 方法仅在元组被下游的所有螺栓确认后才被调用,而不是之前。见这里。这意味着您的代码将在元组在整个元组树中被确认时执行。

于 2020-12-04T21:17:50.197 回答