Apache storm 了解消息的风暴处理流程

Apache storm 了解消息的风暴处理流程,apache-storm,Apache Storm,1.我有一个拓扑(1个喷口和3个螺栓)和3台机器(1个nimbus和2个worker节点)。我想在所有3个节点上运行拓扑还是在nimbus上运行就足够了?是不是nimbus负责将代码分发到其他节点 2.我的喷口将在nimbus或任何工作节点上运行 3.3个螺栓在3个独立节点上运行,还是在同一节点上运行?它会被nimbus照顾吗 4.我们如何跟踪螺栓插入节点的处理 5.是否有任何文档可用于理解Storm中处理消息的完整流程?答案: Nimbus只是维护拓扑结构。部署主jar等任务是nimbus所做

1.我有一个拓扑(1个喷口和3个螺栓)和3台机器(1个nimbus和2个worker节点)。我想在所有3个节点上运行拓扑还是在nimbus上运行就足够了?是不是nimbus负责将代码分发到其他节点

2.我的喷口将在nimbus或任何工作节点上运行

3.3个螺栓在3个独立节点上运行,还是在同一节点上运行?它会被nimbus照顾吗

4.我们如何跟踪螺栓插入节点的处理

5.是否有任何文档可用于理解Storm中处理消息的完整流程?

答案:

  • Nimbus只是维护拓扑结构。部署主jar等任务是nimbus所做的,但nimbus本身不做任何与拓扑相关的处理。因此,您肯定需要工作节点。拥有多个工作节点总是好的,这样storm拓扑就能够抵御任何工作节点的故障。启动nimbus节点时,需要指定nimbus服务器,然后它会自动选择要在此工作节点上运行的拓扑jar

  • 正如在第一点中提到的,nimbus只是一个执行任务的管理器,而喷口只在工作节点上运行

  • 关于你的第三个问题,我建议你读一下

  • 查看storm ui当您开始storm处理时,它会告诉您管道中的每个步骤是如何执行的,因此您可以在查看之后调整每个步骤的并行性

  • 要详细了解storm,请阅读github上的storm教程

  • 我有一个拓扑(1个喷口和3个螺栓)和3台机器(1个nimbus和2个worker节点)。我想在所有3个节点上运行拓扑还是在nimbus上运行就足够了

    使用多个节点可以在集群中分配负载,因此使用多个节点而不是一个节点肯定是有益的。此外,如果节点出现故障,nimbus将能够将任务重新分配给另一台机器。但是,可以在单个节点中设置storm,并且所有内容都可以在单个机器上运行

    是不是nimbus负责将代码分发到其他节点

    我的喷口将在nimbus或任何工作节点上运行

    从属节点负责运行或执行拓扑,它们运行一个名为
    Supervisor

    3个螺栓在3个单独的节点上运行,还是在同一节点上运行?它会被nimbus照顾吗

    分发由Nimbus(主节点)负责。Nimbus负责在集群中分发代码,为机器分配任务,并监控故障

    我们如何跟踪螺栓插入节点的处理

    Storm提供了一个基于web的用户界面,可以选择在主节点上启动(运行Nimbus守护程序)。Storm UI通过显示群集级别和拓扑级别的诊断,提供群集状态的基本概述。可以使用以下命令对其进行午餐

        # cd /path/to/storm/install/dir
        # bin/storm ui
    
    默认情况下,它在
    8080
    端口上侦听,并可以使用
    http://nimbus_host:8080/
    浏览器中的url

    是否有任何文档可用于理解Storm中处理消息的完整流程


    该页面是学习和理解storm工作原理的绝佳场所。您还可以按照查看更多详细信息

    nimbus负责分发作业,但您的所有代码(包括喷口或螺栓)都将在工作节点上运行

    您应该能够通过storm UI跟踪螺栓的进度。此外,您还可以记录一些消息以检查数据流程。

    您阅读了吗?