我有一个使用本地缓存来维护特定id的计数器的用例。我做了一个 fieldsGrouping("spout", new Fields("id")) 在拓扑类中。比如说 id1 总是被处理进来 processingBolt 在 worker1 以及 id2 总是被处理进来 processingBolt 在 worker2 . 如果 worker2 死了,威尔 id2 开始处理 worker1 ?
fieldsGrouping("spout", new Fields("id"))
id1
processingBolt
worker1
id2
worker2
odopli941#
对。storm在内部使用了任务的抽象。如果使用fieldsgrouping,则每个id都Map到一个任务,任务由bolt示例执行。如果一个bold示例失败,storm会将任务移动到其他bolt示例。
1条答案
按热度按时间odopli941#
对。storm在内部使用了任务的抽象。如果使用fieldsgrouping,则每个id都Map到一个任务,任务由bolt示例执行。
如果一个bold示例失败,storm会将任务移动到其他bolt示例。