twitter storm worker能否仅获取拓扑的一部分?
假设您具有以下拓扑结构 喷口 以及以下设置: 3名工艺工人twitter storm worker能否仅获取拓扑的一部分?,twitter,apache-storm,Twitter,Apache Storm,假设您具有以下拓扑结构 喷口 以及以下设置: 3名工艺工人 spout,parallel hint=1 bolt1, parallel hint=2 bolt2,parallel hint=3 我的问题是: 我在工人中的以下(可能)分配是否正确: Worker1 spout1 bolt 2 Worker2 bolt 1 bolt 2 Worker3 bolt1 bolt 2 在上述条件下,bolt1(来自worker2
spout,parallel hint=1
bolt1, parallel hint=2
bolt2,parallel hint=3
我的问题是:
- 我在工人中的以下(可能)分配是否正确:
Worker1 spout1 bolt 2 Worker2 bolt 1 bolt 2 Worker3 bolt1 bolt 2
- 在上述条件下,bolt1(来自worker2,worker3)是否会从spout获得任何元组
- 工人1的螺栓2是否会从螺栓1获得任何数据
- 我们是否必须在工人数量和喷口/螺栓之间保持比例,以便每个工人至少获得一个喷口/螺栓
也就是说,你对工人之间任务分配的看法有些不正确。工人一次只能包含一个螺栓或喷嘴的任务。一个主管可能会运行多个工人,在这种情况下,您将在同一硬件上运行多个不同螺栓或喷嘴的任务,但不在同一流程中。简而言之,您不需要担心哪个工人正在处理特定任务。Storm负责消息的路由,这样你就不需要关注它了。在这种情况下,一切都将按预期工作:喷口将向bolt1工作者发送元组,而botl1工作者将向bolt2工作者发送元组,无论它们在群集中的物理位置如何
也就是说,你对工人之间任务分配的看法有些不正确。工人一次只能包含一个螺栓或喷嘴的任务。一个主管可能运行多个工人,在这种情况下,您将在同一硬件上运行多个不同螺栓或喷嘴的任务,但不在同一流程中。对不起,我相信给定工人(或流程)可以包含任意数量螺栓/喷嘴的任务。我现在有一个拓扑运行,一个工人,一个DRPC喷口和4个螺栓,每个都有一些任务。据我所知,一个给定的任务(或线程)将只执行一个喷口/喷口。对不起,我相信给定的工作者(或进程)可以包含任意数量的喷口/喷口的任务。我现在有一个拓扑运行,一个工人,一个DRPC喷口和4个螺栓,每个都有一些任务。据我所知,给定的任务(或线程)将只执行一个喷口/螺栓。
Worker1
spout1
bolt 2
Worker2
bolt 1
bolt 2
Worker3
bolt1
bolt 2