【问题标题】:When is the 'ack' method in the spout called in Apache Storm?什么时候在 Apache Storm 中调用 spout 中的 'ack' 方法?
【发布时间】:2020-10-21 07:03:38
【问题描述】:

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

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

【问题讨论】:

    标签: apache-storm apache-storm-topology storm-topology


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-01
      • 1970-01-01
      • 2015-04-22
      • 2020-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-14
      相关资源
      最近更新 更多