storm会有一个ackbolt 不断计算top 每个spout,bolt task的msgid ,来确认调用act 方法还是fail方法 ;
如下示列
1.如下图

1.spout 向ackbolt 报上去的 rootId=T1^T2
2.bolt1 向ackbolt 报上去的 rootId=T1^T3^T4^T5
3.bolt2 向ackbolt 报上去的rootId=T2
4.bolt3 向ackbolt 报上去的rootId=T3^T4^T5
actbolt 算出来的这条消息的结果是T1^T2^T1^T3^T4^T5^T2^T3^T4^T5 如果为0 则反回给spout 调用ack方法说明消息成功,否则调用fail方法
本文深入探讨了Storm中ackbolt的作用,通过实例展示了msgid如何用于确认消息处理状态,包括消息从Spout到Bolt的传递过程及消息处理后的反馈机制。
447

被折叠的 条评论
为什么被折叠?



