【问题标题】:How do i listen to specific stream in bolt using apache storm and flux in yaml我如何在 yaml 中使用 apache Storm 和 Flux 收听 Bolt 中的特定流
【发布时间】:2016-12-20 11:02:56
【问题描述】:

我有一个螺栓 "XBOLT" 。这将根据几个条件发出两个流( INTRESTED 和 ARCHIVED )。

然后我有两个螺栓 "YBOLT" 和 "ZBOLT" 。他们都在听 XBOLT,但在不同的流上。例如,YBOLT 将监听 XBOLT 的 ARCHIVED 流,ZBOLT 将监听 XBOLT 的 INRESTED 流。

我最近开始使用带有 Storm 的 Flux 并尝试实现上述内容。

流:

  • 名称:“XBOLT --> YBOLT” 来自:“XBOLT” 至:“YBOLT” 分组: 类型:随机播放

  • 名称:“XBOLT --> ZBOLT” 来自:“XBOLT” 至:“ZBOLT” 分组: 类型:随机播放

现在,在分组部分我是否还需要一个像“流”这样的字段?否则它怎么知道要监听 XBOLT 的特定流?

【问题讨论】:

    标签: apache stream apache-storm flux


    【解决方案1】:

    是的,您可以使用另一个字段来指定流的名称。 您可以在流定义的分组部分中使用“streamId”属性。

    例如,在您的情况下,您可以像这样定义流:

    streams:
       - id: "XBOLT --> YBOLT"
         from: "XBOLT"
         to: "YBOLT"
         grouping:
           type: SHUFFLE
           streamId: "ARCHIVED"
    
       - id: "XBOLT --> ZBOLT"
         from: "XBOLT"
         to: "ZBOLT"
         grouping:
           type: SHUFFLE
           streamId: "INTRESTED"

    作为参考,您可以查看本文档的流和流分组部分。该文档适用于版本 2 快照,但它适用于我的 0.10.0

    风暴和通量版本

    http://storm.apache.org/releases/2.0.0-SNAPSHOT/flux.html

    【讨论】:

      【解决方案2】:

      上面的答案很接近,但实际上应该是:

      streams: - name: "XBOLT --> YBOLT" from: "XBOLT" to: "YBOLT" grouping: type: SHUFFLE streamId: "ARCHIVED" - name: "XBOLT --> ZBOLT" from: "XBOLT" to: "ZBOLT" grouping: type: SHUFFLE streamId: "INTRESTED"

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-11-17
        • 1970-01-01
        相关资源
        最近更新 更多