【发布时间】:2015-12-09 09:42:47
【问题描述】:
Storm 拓扑已在机器 X 上使用 Storm 命令部署。工作节点正在机器 Y 上运行。
部署拓扑后,就可以处理元组,工作人员正在处理请求和响应。
任何人都可以建议工作节点如何识别工作和数据,因为我不确定工作节点如何访问开发人员根本没有部署的代码? 如果 Worker 节点可以访问拓扑代码,请问这个位置在哪里,并建议执行 Worker 节点?
【问题讨论】:
标签: apache-storm worker
Storm 拓扑已在机器 X 上使用 Storm 命令部署。工作节点正在机器 Y 上运行。
部署拓扑后,就可以处理元组,工作人员正在处理请求和响应。
任何人都可以建议工作节点如何识别工作和数据,因为我不确定工作节点如何访问开发人员根本没有部署的代码? 如果 Worker 节点可以访问拓扑代码,请问这个位置在哪里,并建议执行 Worker 节点?
【问题讨论】:
标签: apache-storm worker
第一,您提出了一个相当复杂的问题。我使用 Storm 已经有一段时间了,不太了解它在内部是如何工作的。 Here 是一篇关于 Storm 内部的好文章。它已有两年多的历史,但仍应具有高度相关性。我相信 Netty 现在被用作内部消息传输,文章中提到它是实验性的。
就在工作节点上运行的代码而言,storm.yaml 中有一个配置,
storm.local.dir
上传拓扑时,我相信它会将 jar 复制到该位置。因此,每台不同的工作机器都将在其配置的storm.local.dir 中具有必要的 jar。因此,即使您只上传一台机器,Storm 也会将其分发给必要的工作人员。 (那是凭记忆,暂时没空去测试。)
【讨论】: