首页 > 解决方案 > LocalCluster 中的不同拓扑是否可以在 apache-storm 中具有相同名称的流和螺栓

问题描述

我需要在 LocalCluster 模式下运行多个风暴项目。

ProjectA->TopologyA->Spout1(listing to some stream X )->Bolt1->Bolt2
ProjectB->TopologyB->Spout1(listing to some stream Y )->Bolt1->Bolt2
ProjectC->TopologyC->Spout1(listing to some stream Z )->Bolt1->Bolt2

当我运行项目 A、B 和 C 时,其他项目的 spout 会以某种方式读取流。这可能是什么原因。

PS:Storm 的新手,试图从文档中找出,但无法找出任何具体的东西。

标签: javaapacheapache-stormapache-storm-topology

解决方案


好的。我认为首先你应该弄清楚喷口流是否重叠。也就是说,您应该在您的 Spout1 中放置一个日志,记录您发出时的日志,并尝试运行所有拓扑并验证 TopologyA 和 TopologyB Spout1 实例是否正在读取相同的消息。

您是否还启动了一个或 3 个 LocalCluster 来运行这些拓扑?尝试启动一个将所有拓扑提交到的 LocalCluster,我不确定 LocalCluster 是否设计为运行多个实例。


推荐阅读