我需要在localcluster模式下运行多个storm项目。
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时,不知何故流被其他项目的喷口读取。原因可能是什么。
ps:对storm来说还比较陌生,我们试图从文档中找出答案,但没有找到具体的答案。
1条答案
按热度按时间ntjbwcob1#
可以。我想首先你应该弄清楚喷口的水流是否重叠。也就是说,您应该在spout1中放置一个日志,当您发出时记录该日志,然后尝试运行所有拓扑,并验证topologya和topologyb spout1示例是否正在读取相同的消息。
您是否正在启动一个或3个localclusters来运行这些拓扑?尝试启动一个提交所有拓扑的localcluster,我不确定localcluster是否设计为运行多个示例。