Apache Storm 官方文档 —— 使用非 JVM 语言开发

简介:
  • 两个部分:创建拓扑,以及使用其他语言实现 spouts 与 bolts

  • 由于 Storm 的拓扑都是基于 thrift 结构的,所以使用其他语言创建拓扑也是一件很容易的事情
  • 使用其他语言实现的 spouts 与 bolts 称为“多语言组件”(multilang components)或者“脱壳”(shelling)
    • 这是具体的实现协议:多语言接口协议
    • thrift 结构允许你定义以一个程序和脚本的方式定义多语言组件(例如,可以使用 python 程序和文件实现 bolt)
    • 在 Java 中,需要覆写 ShellBolt 或者 ShellSpout 来创建多语言组件
      • 注意,输出域是在 thrift 结构中声明的,所以在 Java 中你需要这样创建多语言组件:
        • 在 Java 中声明域,并通过在 shellbolt 的构造器中指定输出域来处理其他语言的代码
    • 多语言组件在 STDIN/STDOUT 中使用 JSON 消息来和子进程通信
    • 已经实现了 Ruby,Python 等语言的相关协议,例如,python 支持 emit、anchor、ack 与 log等操作
  • “storm shell” 命令简化了构造 jar 包与向 nimbus 上传文件的过程
    • 构建 jar 文件并将其上传
    • 使用 nimbus 的 host/port 以及 jar 文件的 id 来调用你的程序

以非 JVM 语言实现 DSL 的相关说明

译者注:由于本文部分内容与另一篇文档定义 Storm 的非 JVM 语言 DSL重复,这里不再罗列,详情请参阅该文档。

相关文章
|
存储 Java BI
探索Apache POI库:强大的Excel和Word文档处理工具
在企业应用和数据处理中,Excel和Word文档是常见的数据交换和存储格式。然而,处理和操作这些文档可能是一项繁琐的任务。Apache POI库作为一款强大的文档处理工具,可以帮助我们更轻松地进行Excel和Word文档的读写、编辑和生成。本文将深入探讨Apache POI库的基本概念、特点,以及如何在实际应用中使用它进行文档处理。
1766 0
|
SQL Apache 流计算
Apache Flink官方网站提供了关于如何使用Docker进行Flink CDC测试的文档
【2月更文挑战第25天】Apache Flink官方网站提供了关于如何使用Docker进行Flink CDC测试的文档
1652 3
|
JavaScript 前端开发 Java
深入理解JVM - 动态类型语言
深入理解JVM - 动态类型语言
194 0
|
XML Java API
Apache POI详解及Word文档读取示例
apache poi资料详解,包括内部jar包依赖关系,及与使用文档的对应关系
3794 0
|
消息中间件 存储 分布式计算
Hadoop生态系统中的实时数据处理技术:Apache Kafka和Apache Storm的应用
Hadoop生态系统中的实时数据处理技术:Apache Kafka和Apache Storm的应用
|
机器学习/深度学习 分布式计算 Kubernetes
Apache Spark 2.3 加入支持Native Kubernetes及新特性文档下载
Apache Spark 2.3 加入支持Native Kubernetes及新特性文档下载
318 0
Apache Spark 2.3 加入支持Native Kubernetes及新特性文档下载
|
消息中间件 大数据 Kafka
数据流处理:Apache Samza和Apache Storm的比较
数据流处理是现代大数据应用程序中至关重要的组成部分。为了有效地处理大规模的实时数据流,开发人员需要选择适合其需求的数据流处理框架。在本文中,我们将比较两个受欢迎的数据流处理框架 Apache Samza 和 Apache Storm,并探讨它们的特点、优势和适用场景。
434 0
|
JavaScript 前端开发 Java
深入理解JVM - 动态类型语言
上一节讲述了栈桢和分派的细节,这一节我们来讲讲自java语言诞生新增加的新语言特性:动态类型语言支持,这一节将会根据动态语言的特性以及相关的介绍同时讲述jvm一个重要的指令:invoke dynamic指令。但是需要注意的是:invokedy namic指令面向 的主要服务对象并非Java语言,而是其他Java虚拟机之上的其他动态类型语言
189 0
|
消息中间件 机器学习/深度学习 分布式计算
安装Apache Storm
安装Apache Storm
231 0
|
SQL Java 数据处理
JVM 上数据处理语言的竞争:Kotlin, Scala 和 SPL
JVM 上数据处理语言的竞争:Kotlin, Scala 和 SPL
414 0

推荐镜像

更多