第 1 章 AMQ Streams 概述
Red Hat AMQ Streams 是一个可大规模扩展的、分布式和高性能数据流平台,它基于 Apache ZooKeeper 和 Apache Kafka 项目。
主要组件包括:
- Kafka Broker
负责将记录从生成客户端到使用客户端的消息传递代理。
Apache ZooKeeper 是 Kafka 的一个核心依赖项,为高度可靠的分布式协调提供集群协调服务。
- Kafka Streams API
- 用于编写 流处理器 应用的 API。
- Producer 和 Consumer APIs
- 基于 Java 的 API,用于向 Kafka 代理生成和使用信息。
- Kafka Bridge
- AMQ Streams Kafka Bridge 提供了一个 RESTful 接口,它允许基于 HTTP 的客户端与 Kafka 集群交互。
- Kafka Connect
- 使用 Connector 插件在 Kafka 代理和其他系统间流传输数据的工具包。
- Kafka MirrorMaker
- 在两个 Kafka 集群或数据中心之间复制数据。
- Kafka Exporter
- 用于监控 Kafka 指标数据的导出器。
Kafka 代理的集群是 hub 连接所有这些组件。代理使用 Apache ZooKeeper 存储配置数据和集群协调。在运行 Apache Kafka 之前,Apache ZooKeeper 集群必须就绪。
图 1.1. AMQ Streams 架构
1.1. Kafka 功能 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
Kafka 的底层数据流处理功能和组件架构可以提供:
- 微服务和其他应用,以极高吞吐量和低延迟共享数据
- 消息排序保证
- 从数据存储中递归/恢复消息,以重新构建应用程序状态
- 使用键值日志时,消息压缩以删除旧记录
- 集群配置中的水平可扩展性
- 复制数据以控制容错
- 保留大量数据以即时访问