我刚开始学习Apache Storm。我无法理解的一件事是,是否在Supervisor节点上的至少一个工作进程上复制了整个拓扑。如果是这种情况,那么拓扑中一个非常计算密集的组件(并且可能在单个机器上自行执行更好的(性能))是一个潜在的瓶颈?如果没有,我会以某种方式假设Nimbus"分发"整个集群中的拓扑部分。它是如何最佳地分发"分发"拓扑?
答案 0 :(得分:1)
Storm不会复制拓扑。如果部署拓扑,则所有执行程序线程均匀分布在所有工作节点上(使用循环调度机制)。可以通过Config.setNumWorkers(int);
配置拓扑可以使用的工作节点数。
如果您有计算密集型螺栓,并且希望确保将其部署到自己的工作程序,则需要实现自定义计划程序。有关详细信息,请与她联系:https://xumingming.sinaapp.com/885/twitter-storm-how-to-develop-a-pluggable-scheduler/