storm拓扑已在计算机x上使用storm命令部署。工作节点正在计算机y上运行。一旦部署了拓扑,就可以处理元组了,工人正在处理请求和响应。有谁能建议worker node如何识别工作和数据,因为我不确定worker node如何访问开发人员根本没有部署的代码?如果工作节点可以访问到拓扑的代码,您能否确定此代码的位置,并建议执行工作节点?
3b6akqbq1#
第一,你问了一个相当复杂的问题。我已经使用storm一段时间了,对它的内部工作原理不太了解。下面是一篇关于风暴的内部结构的好文章。它已经有两年多了,但仍然应该是高度相关的。我相信netty现在被用作内部消息传递,这在本文中被提到是实验性的。对于在工作节点上运行的代码,storm.yaml中有一个配置,
storm.local.dir
上载拓扑时,我相信它会将jar复制到该位置。因此,每台不同的工作机都会在配置好的jar中有必要的jar storm.local.dir . 所以即使你只上传一台机器,storm也会把它分发给必要的工人(这是我的记忆,我现在还没来得及测试。)
1条答案
按热度按时间3b6akqbq1#
第一,你问了一个相当复杂的问题。我已经使用storm一段时间了,对它的内部工作原理不太了解。下面是一篇关于风暴的内部结构的好文章。它已经有两年多了,但仍然应该是高度相关的。我相信netty现在被用作内部消息传递,这在本文中被提到是实验性的。
对于在工作节点上运行的代码,storm.yaml中有一个配置,
上载拓扑时,我相信它会将jar复制到该位置。因此,每台不同的工作机都会在配置好的jar中有必要的jar
storm.local.dir
. 所以即使你只上传一台机器,storm也会把它分发给必要的工人(这是我的记忆,我现在还没来得及测试。)