专业编程基础技术教程

网站首页 > 基础教程 正文

Kafka慢慢学之二:核心 API篇 核心kafka api有5种,分别是

ccvgpt 2024-10-12 13:42:41 基础教程 7 ℃

Kafka包括五个核心api:

  • Producer API 允许应用程序将数据流发送到 Kafka 集群中的主题。
  • Consumer API 允许应用程序从 Kafka 集群中的主题中读取数据流。
  • Streams API 允许将数据流从输入主题转换为输出主题。
  • Connect API 允许实现连接器,这些连接器不断地从某个源系统或应用程序拉入 Kafka,或从 Kafka 推送到某个接收器系统或应用程序。
  • Admin API 允许管理和检查主题、代理和其他 Kafka 对象。Kafka 通过独立于语言的协议公开其所有功能,该协议具有多种编程语言的客户端。然而,只有 Java 客户端作为主要 Kafka 项目的一部分进行维护,其他客户端可作为独立的开源项目使用。此处提供了非 Java 客户端列表。

2.1 生产者 API

Producer API 允许应用程序将数据流发送到 Kafka 集群中的主题。javadocs 中给出了显示如何使用生产者的示例 。

要使用生产者,您可以使用以下 maven 依赖项:

Kafka慢慢学之二:核心 API篇 核心kafka api有5种,分别是

<dependency>
	<groupId>org.apache.kafka</groupId>
	<artifactId>kafka-clients</artifactId>
	<version>3.2.0</version>
</dependency>

2.2 消费者API

Consumer API 允许应用程序从 Kafka 集群中的主题中读取数据流。javadocs 中给出了显示如何使用消费者的示例 。

要使用消费者,您可以使用以下 maven 依赖项:

<dependency>
	<groupId>org.apache.kafka</groupId>
	<artifactId>kafka-clients</artifactId>
	<version>3.2.0</version>
</dependency>

2.3 流API

Streams API 允许 将数据流从输入主题转换为输出主题。javadocs 中给出了如何使用这个库的示例

此处 提供了有关使用 Streams API 的其他文档。

要使用 Kafka Streams,您可以使用以下 maven 依赖项:

<dependency>
	<groupId>org.apache.kafka</groupId>
	<artifactId>kafka-streams</artifactId>
	<version>3.2.0</version>
</dependency>

使用 Scala 时,您可以选择包含该kafka-streams-scala库。开发人员指南中提供了有关使用 Kafka Streams DSL for Scala 的其他文档。

要使用 Kafka Streams DSL for Scala for Scala 2.13,您可以使用以下 maven 依赖项:

<dependency>
	<groupId>org.apache.kafka</groupId>
	<artifactId>kafka-streams-scala_2.13</artifactId>
	<version>3.2.0</version>
</dependency>

2.4 连接接口

Connect API 允许实现连接器,这些连接器不断地从某个源数据系统拉入 Kafka 或从 Kafka 推送到某个接收器数据系统。许多 Connect 用户不需要直接使用此 API,但他们可以使用预构建的连接器,而无需编写任何代码。此处提供有关使用 Connect 的更多信息。

那些想要实现自定义连接器的人可以查看javadoc。

2.5 管理 API

Admin API 支持管理和检查主题、代理、acls 和其他 Kafka 对象。要使用 Admin API,请添加以下 Maven 依赖项:

<dependency>
	<groupId>org.apache.kafka</groupId>
	<artifactId>kafka-clients</artifactId>
	<version>3.2.0</version>
</dependency>

Tags:

最近发表
标签列表