来自各种示例的最佳风暴并行性
Best Storm Parallelism from various examples
我正在为我的风暴拓扑应用并行性。我已经设置了工作节点数=1.
例子#1
我将特定组件的任务数和执行器数设置为“2”。
示例#2:任务数 < 执行者数
我将特定组件的任务数设置为“1”,将执行者数设置为“2”。
示例#3:任务数 > 执行者数
我将特定组件的任务数设置为“5”,将执行者数设置为“1”。
我不明白上面哪个例子会导致拓扑的最佳并行性,并建议哪个能带来 Storm 并行性的好处?请帮助我理解这一点。
你读过这篇文章吗? https://storm.apache.org/documentation/Understanding-the-parallelism-of-a-Storm-topology.html
为了获得良好的性能,您应该将执行程序的数量设置为可用内核的数量(每个执行程序在自己的线程中运行)。只有当您想在运行时更改并行度时,使用比执行程序更多的任务才有用。
您的 "example#2" 没有有效的配置:#tasks >= #executors 必须始终为真(否则,会有线程没有工作)。
我正在为我的风暴拓扑应用并行性。我已经设置了工作节点数=1.
例子#1 我将特定组件的任务数和执行器数设置为“2”。
示例#2:任务数 < 执行者数 我将特定组件的任务数设置为“1”,将执行者数设置为“2”。
示例#3:任务数 > 执行者数 我将特定组件的任务数设置为“5”,将执行者数设置为“1”。
我不明白上面哪个例子会导致拓扑的最佳并行性,并建议哪个能带来 Storm 并行性的好处?请帮助我理解这一点。
你读过这篇文章吗? https://storm.apache.org/documentation/Understanding-the-parallelism-of-a-Storm-topology.html
为了获得良好的性能,您应该将执行程序的数量设置为可用内核的数量(每个执行程序在自己的线程中运行)。只有当您想在运行时更改并行度时,使用比执行程序更多的任务才有用。
您的 "example#2" 没有有效的配置:#tasks >= #executors 必须始终为真(否则,会有线程没有工作)。