集群中具有单节点实例的生产模式下的风暴字数拓扑

时间:2018-08-04 19:16:21

标签: apache-storm

在生产模式下运行风暴字数拓扑时,如果集群中只有一个单节点实例,那么如果指定

,它仍会创建3个Workerprocesses实例吗?

config.setNumWorkers(3);

据我了解,每个Worker进程都在单独的JVM实例上运行?请澄清。

1 个答案:

答案 0 :(得分:0)

如果您查看主管节点的storm.yaml(或默认值在https://github.com/apache/storm/blob/1828a17e553927419d380203055803647aab2aa1/conf/defaults.yaml#L148),您将看到supervisor.slots.ports设置。此设置定义您的超级用户节点可以启动多少个工作进程(JVM),即超级用户提供的最大工作人员插槽数。

您在拓扑配置中设置的工作程序数量指定您希望拓扑在其中运行的工作程序插槽。

例如,如果您的超级用户配置是默认配置,它将最多启动4个工作进程,因为supervisor.slots.ports中列出了4个端口。如果然后使用config.setNumWorkers(3)提交拓扑,则管理程序将在管理程序计算机上启动3个辅助JVM,占用4个插槽中的3个,并保留一个空闲的插槽。