如何连接 Kafka 和 Camel Spring Boot

How to connect Kafka with Camel Spring Boot

将 Kafka 与 Spring Boot Camel 连接有哪些选项?

我是 运行 ActiveMQ Artemis 和 Camel,负责制作 JMS/MQTT 和 REST 路由 to/from 客户端。 我想将 Kafka 添加到 stream/exchange 数据(视频+音频,files/text)。

到目前为止,我下载了 Kafka Confluent Platform(免费试用版),我正在测试它们提供的功能。在 Confluent Platform 中,我看到可以将连接器添加为“插件”。我假设我可以通过这种方式添加 Camel 连接器,但这对我来说似乎是个糟糕的解决方案,因为我想玩这些路线并看看引擎盖下是什么,但在这里我看不到这是可能的,或者我错了吗?

我想到的其他选择是下载 Apache Kafka、Zookeeper,将 Kafka Spring 引导依赖项添加到 Camel pom.xml,然后像示例中那样制作 Camel 路由 here .我在正确的轨道上吗?

Kafka-Broker

如果你想玩玩,我建议在你的开发机器上安装 Kafka(它还带有 Zookeeper)。最简单的方法是为您的操作系统使用 程序包管理器 。例如,如果您在 Windows 上工作,则可以安装 Scoop.

然后你可以使用 one-liner:

安装当前版本的普通 Kafka(非融合平台)
scoop install kafka

安装后,您可以首先启动 zookeeper,然后使用 bin 文件夹中提供的 bat/sh 脚本启动 kafka

驼色

在您的 Camel 项目中(无论 Spring 是否启动)您只需要将 camel-kafka 添加到您的依赖项中。

您本地计算机上 Kafka 代理 运行 的 路由端点 URI

kafka:[topic-name]?brokers=localhost:9092

您可以将此类 URI 用于消费者 (from("kafka:...")) 或生产者 (.to("kafka:..."))