Kafka 生产者从 PORT 生成数据到主题



我是卡夫卡的新手。

我有一台 Linux 机器,其中端口号 2552 从外部服务器获取数据流。

我想使用 Kafka 生产者来侦听该端口并将数据流传输到主题。

这是一个完整的黑客,但适用于沙盒示例:

nc -l 2552 | ./bin/kafka-console-producer --broker-list localhost:9092 --topic test_topic

它使用 netcat 侦听 TCP 端口,并将收到的任何内容传送到 Kafka 主题。

快速的Google也发现了这个 https://github.com/dhanuka84/kafka-connect-tcp 它看起来做了类似的事情,但更强大,使用Kafka Connect API。

您不会说端口 2552 上的流量是 TCP 还是 UDP,但通常您可以轻松地编写一个程序来侦听该端口,将接收到的数据解析为离散消息,然后使用 Kafka Producer API 将数据作为 Kafka 消息(带或不带密钥(发布到 Kafka 主题。

在某些情况下,现有的开源代码可能已经为您执行此操作,因此您无需从头开始编写它。如果端口 2552 协议是众所周知的协议,例如在 IANA 中注册的 TCP 或 UDP 呼叫记录协议(请参阅 ftp://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.txt(,那么甚至可能有现有的 Kafka 连接器或代理支持它。在 GitHub 上搜索 kafka-connect-[protocol],或查看 https://www.confluent.io/product/connectors/

甚至可能有一个通用的 TCP 或 UDP 连接器,您可以将其用作参考,为尝试摄取的特定协议配置或构建自己的连接器。

相关内容

最新更新