apache-storm - Apache Storm 并行性如何工作?
问题描述
我是 Apache Storm 的新手,想知道并行提示是如何工作的。
例如,我们有一个包含两个元组 <4>、<6> 的流,一个 spout,每个执行程序只有一个任务,我们有一个螺栓来对元组执行一些操作,并行提示为 2,所以我们有两个执行程序这个螺栓即A和B,关于这个,我有3个问题。
- 考虑到上述情况,有可能我们包含值 4 的元组由 A 处理,而另一个包含值 6 的元组由 B 处理。
- 如果以这种方式进行处理,即问题(1)中提到的,那么它不会影响顺序重要的操作。
- 如果没有以这种方式进行处理,则意味着两个元组都将转到同一个执行程序,那么并行性有什么好处。
解决方案
- 考虑到上述情况,有可能我们包含值 4 的元组由 A 处理,而另一个包含值 6 的元组由 B 处理。
是的。
- 如果以这种方式进行处理,即问题(1)中提到的,那么它不会影响顺序重要的操作。
这取决于。您很可能可以控制 spout 中元组的顺序。如果顺序很重要,建议减少并行性或使用字段分组,以确保相互依赖的元组转到同一个执行程序。如果序列无关紧要,请使用 shuffleGrouping 或 localOrShuffleGrouping 从并行处理中获益。
- 如果没有以这种方式进行处理,则意味着两个元组都将转到同一个执行程序,那么并行性有什么好处。
如果两个元组都去同一个执行者,显然没有任何好处。
推荐阅读
- javascript - 如何在 GoJS 中向端口添加数字?
- .htaccess - 301 重定向到带有 HSTS 预加载标头的 WWW
- saml-2.0 - Kentor/Sustainsys 在收到来自 IDP 的 LogoutResponse 后重定向回 SP
- uwp - UWP 设备信息文件
- angular - 量角器:.spec 和 .po.ts 文件执行的时间安排?
- c# - SQL_ERROR:“MySql.Data.MySqlClient.MySqlConnectAttrs”的类型初始化程序引发异常
- nginx - Gzip 仅适用于域的 Nginx 安装,但适用于 index.html
- botframework - Bot Framework ResumeDialogAsync 未触发
- sqlite - 通过 Node Red 自动查询 SQLite 的问题
- javascript - pdfkit 浏览器 - 使用自定义字体时出现“未捕获的 ReferenceError:fs 未定义”