Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache storm 风暴工人之间如何分配工作?_Apache Storm - Fatal编程技术网

Apache storm 风暴工人之间如何分配工作?

Apache storm 风暴工人之间如何分配工作?,apache-storm,Apache Storm,Apache Storm是如何在其工作人员之间分配任务的,我了解到Storm是自己完成任务的,它是一个并行函数,但我不知道的是,我如何计算出哪个节点完成什么任务,以及有多少节点将完成什么任务,基本上这样我就可以计算出所需的最佳节点数? 假设所有节点的硬件配置都不相同。您需要查看storm UI。指标:完整延迟、容量、执行延迟、进程延迟和失败元组将为您提供“提示”,说明您应该为每个螺栓分配多少执行者和任务 默认情况下,Storm使用“循环”调度,即使用可用插槽在所有监控器上循环,并分配喷口/螺栓的

Apache Storm是如何在其工作人员之间分配任务的,我了解到Storm是自己完成任务的,它是一个并行函数,但我不知道的是,我如何计算出哪个节点完成什么任务,以及有多少节点将完成什么任务,基本上这样我就可以计算出所需的最佳节点数?
假设所有节点的硬件配置都不相同。

您需要查看storm UI。指标:完整延迟、容量、执行延迟、进程延迟和失败元组将为您提供“提示”,说明您应该为每个螺栓分配多少执行者和任务

默认情况下,Storm使用“循环”调度,即使用可用插槽在所有监控器上循环,并分配喷口/螺栓的并行实例。如果没有更多的可用插槽,单个工人将被分配多个喷口/螺栓实例。

我相信这种循环不会以特定顺序发生,因此理论上,可能会发生一个特定螺栓会使系统瓶颈,如果所有实例都在低端节点上,这是正确的说法吗?建议的解决方案?这是正确的。您可以为Storm提供自定义计划程序来控制部署。请看这里:Storm将每个工人视为同质的东西,这意味着您不应该期望Storm能够作为资源管理器(纱线、介观等)正确地使用整个资源。正如Matthias所说,通过打开插槽或实现自定义调度程序,您需要关心每个节点可以正常运行的工作人员数量。