java - Storm 集群配置

标签 java apache-storm

我目前有一个运行在 3 台 Unix 机器上的 Storm 集群(一台用于 Nimbus/Zookeeper,另外两台作为主管)。

我的拓扑是这样配置的:

JMSDataSpout1 & JMSDataSpout2 -> EsperBolt -> JMSBolt

在我的集群环境中,我看到 Nimbus 将 spout 部署到两台不同的机器上。这很好,但我不禁想知道 - 它也会对我的其他两个 bolt 做同样的事情吗?

具体来说,如果我通过 JMSDataSpout1 收到一条消息,但同一台机器上不存在 EsperBolt 实例,会发生什么情况?

Nimbus 会识别这个并将消息转发到另一台机器上运行的 EsperBolt 还是消息丢失了?

最佳答案

它将通过网络将其发送到运行 bolt 的监管者。 Nimbus 甚至不会参与该过程,只是告诉监管者它应该将元组发送到哪里。

关于java - Storm 集群配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23991074/

相关文章:

java - 如何在YouTube( WebView )中使用全屏显示?

java - 如何在Java中为字符串变量创建if语句?

java - 创建一个以元组为键的哈希表

java - 从命令行运行 jar 时覆盖 pom.xml 中指定的主类

intellij-idea - Gradle依赖问题-Apache Storm

java - 执行 mvn javadoc :javadoc 时出现 ClassNotFoundException

java - Ribbon 是否缓存 Eureka 条目?

java - 如何在 Storm 拓扑中序列化非原始类型(您自己的类)的字段?

apache-storm - Apache Storm 中的 Spout 节流

java - Storm apache升级(1.0.0到2.0.0)