Apache Storm 2.0.0 发布了,距离它上次更新已过去一年,新版本在性能、新功能和与外部系统的集成方面进行了重大改进,下面是一些主要功能及改进:
用 Java 实现的新架构
在之前的版本中,Storm 的核心功能很大一部分是在 Clojure 中实现的。Storm 2.0.0 已经重新设计,它的核心功能用纯 Java 实现。新的基于 Java 的实现显著提高了性能,使 Storm 的内部 API 更易于维护和扩展。
新的高性能核心
Storm 2.0.0 引入了一个新的核心,它具有更精简的线程模型、超快的消息传递子系统和轻量级的背压模型。它旨在突破吞吐量、延迟和能耗的边界,同时保持向后兼容性。Storm 2.0 成为第一款打破 1 微秒延迟障碍的流媒体引擎。
新的 Streams API
新版本引入了一种新的类型 API,以更轻松地表达流式计算。它建立在 Storm 的核心 spouts 和 bolt API 之上,并自动融合多个操作以优化管道。
窗口增强功能
Storm 2.0.0 的 Windowing API 可以将窗口状态保存/恢复到配置的状态后端,以支持更大的连续窗口。现在可以通过 API 访问窗口边界。
Kafka 集成的变化
- 删除 Storm-Kafka
- 迁移到 KafkaConsumer.assign API
1.0.x. 版本结束生命周期
迁移到 Java 8
其他
- 增强 SQL
- 改进 Metrics
- 新的安全功能,例如 nimbus 管理组、委派令牌和可选模拟
- 模块重组和依赖项解析改进
- 改进 API
- 支持 Lambda
- 增强资源感知调度程序
- 用于调试集群状态的新管理命令
文章来源: https://www.toutiao.com/group/6698134415597371915/