Azkarra Streams:Java微框架增强了Kafka Streams
StreamThoughts ,一家科技咨询公司,专注于实时数据流, 介绍Azkarra流 。 这个新的开源Java框架可帮助程序员开发和部署多个Kafka Streams应用程序。 使用它,您可以快速创建(和调试)独立的Kafka流应用程序。
该项目有助于添加到Kafka Streams生态系统中,并且由于它是一个“微框架”,因此体积小,重量轻。
让我们看一下这个新的微框架及其如何帮助的概述。
Azkarra Streams功能
Azkarra Streams是Kafka Stream的第一个微框架,该框架是用于构建应用程序和微服务的客户端库。 在Kafka Streams中,数据存储在Kafka群集中。 您可以使用Kafka Streams部署到容器和虚拟机,并编写Java(和Scala)应用程序。
来自Azkarra Streams GitHub README的功能包括:
- 创建独立的Kafka Streams应用程序。
- 轻松外部化拓扑和Kafka Streams配置(使用Typesafe Config)。
- 嵌入式http服务器(Undertow)。
- 嵌入式WebUI用于拓扑可视化。
- 提供可用于生产的功能,例如度量标准,运行状况检查,死信队列。
- 使用SSL或基本身份验证的加密和身份验证。
使用它可以使您更加专注于编写重要内容:Kafka Streams拓扑代码。
#AzkarraStreams WebUI演示
GitHub的项目- > https://t.co/ZPWBgwv5FU @kafkastreams #opensource @streamthought_ pic.twitter.com/ZUbl532BDP
— Florian Hussonnois(@fhussonnois) 2019年11月27日
用户界面
默认情况下,Azkarra Streams通过基于Web的嵌入式用户界面使事情变得更加轻松。 在UI内,您可以一目了然地停止和重新启动应用程序,查看活动流以及浏览指标。
用户还可以查看探索他们的数据结构。 查看流的简单DAG(有向无环图)表示。
还请参见: 测试驱动的Java开发与传统测试的对比研究
互动查询
从StreamThought联合创始人Florian Hussonnois的公告中:
最后,Kafka Streams具有强大的机制来查询stream应用程序实现的状态。 通常,作为开发人员,我们构建HTTP端点以使用公共Kafka Streams API公开这些状态。
Azkarra Streams为此提供了一个默认终结点,可以通过Azkarra WebUI直接访问该终结点。
用户可以在用户界面的“交互式查询”选项卡下查询指定的键。 只需设置您的选项和参数,然后执行即可。
还请参见: 明天的区块链开发人员的交叉技能
开始吧
它的先决条件包括:IDE或文本编辑器,Java 11,Maven版本3+和Docker。
查看入门指南以获取本教程的介绍,以及开发人员指南以获取有关其工作原理的更深入的介绍。 一定还要检查出StreamThought的Apache Kafka的其他开放源代码存储库。
在GitHub上获取示例并进行测试运行。 在运行示例之前,您将需要启动Kafka集群。 使用文件docker-compose.yml
启动单节点Kafka集群。
提供帮助并保持问题跟踪器最新状态,以获取具有改进和新功能的更好,更成熟的将来版本。