storm:bolt是如何执行元组的?
storm: How does bolt executes tuple?
当execute()
returns时,bolt会被下一个元组执行?如果螺栓不确认前一个元组会发生什么?换句话说,我们可以在 execute()
returns 之后确认元组吗?
如果bolt长时间不ack一个元组,那么默认情况下,spout会再次向下游发出父元组,bolt会再次被同一个元组执行,对吧?如果 bolt ack 已经被 spout 认为失败的旧元组会发生什么?
如果您不在 bolt 中确认输入元组,spout 可能会再次发出根元组。
是的,在执行 returns 之后确认元组是可以的,只要您在合理的时间范围内(在消息超时到期并且 spout 再次发出根元组之前)进行。
如果你确认一个已经过期的元组,它没有任何效果。
当execute()
returns时,bolt会被下一个元组执行?如果螺栓不确认前一个元组会发生什么?换句话说,我们可以在 execute()
returns 之后确认元组吗?
如果bolt长时间不ack一个元组,那么默认情况下,spout会再次向下游发出父元组,bolt会再次被同一个元组执行,对吧?如果 bolt ack 已经被 spout 认为失败的旧元组会发生什么?
如果您不在 bolt 中确认输入元组,spout 可能会再次发出根元组。
是的,在执行 returns 之后确认元组是可以的,只要您在合理的时间范围内(在消息超时到期并且 spout 再次发出根元组之前)进行。
如果你确认一个已经过期的元组,它没有任何效果。