【问题标题】:Pushing Router Data to DIstributed Messaging System将路由器数据推送到分布式消息系统
【发布时间】:2014-08-07 19:20:20
【问题描述】:

查询:将路由器的接口作为kafka集群的生产者。

问题:我的路由器接口正在尝试将数据推送到运行 kafka 的端口。 (默认为 9092)。

问。 1 但是 kafka 代理可以在不创建主题的情况下接受这些数据吗?

问。 2 kafka消费者可以在不指定主题的情况下拉取数据吗?

      If yes, How ?

      If not, What is work around this and how can i achieve this ?

第一次编辑:

我刚刚检查了 Kafka 代理配置有“auto.create.topics.enable”字段。 如果我将此设置为 true 并在不使用“kafka-console-producer”命令的情况下在 kafka 的端口上发送一些随机数据,kafka 代理会接受吗?

谢谢。

【问题讨论】:

    标签: networking message-queue distributed-computing flume apache-kafka


    【解决方案1】:

    kafka 代理能否在不创建主题的情况下接受此数据

    默认情况下,Kafka 代理的设置方式是,如果您尝试将数据推送到它并且它还不存在,它会创建主题。此行为由auto.create.topics.enable 参数控制(使用true/false 值)。

    但是经纪人根本无法接受没有创建主题的数据。是的,必须在生产者端指定主题名称。

    kafka 消费者能否在不指定主题的情况下拉取数据

    不,它不能。

    如果没有,有什么方法可以解决这个问题,我该如何实现?

    您必须以某种方式检索主题名称,例如,通过 api 列出所有主题并选择合适的主题,或者您可以直接挖掘 zookeeper 内部,尽管我不建议您这样做。

    我刚刚检查了 Kafka 代理配置有“auto.create.topics.enable”字段。如果我将此设置为 true 并在不使用“kafka-console-producer”命令的情况下在 kafka 的端口上发送一些随机数据,kafka 代理会接受吗?

    当然不是。 Kafka使用it's own protocol来建立producer和broker、broker和consumer之间的连接,而且这些消息是经过特殊编码的。

    【讨论】:

    • 其实路由器只知道kafka broker的ip地址和端口号。它发送 UDP 数据包,我想使用它们。但是路由器生产时不能指定主题名!你能告诉我这个吗?
    • 有点不清楚你说的router是什么意思。你指的是network router device吗?你要拦截通过它发送的流量还是什么?您具体在谈论什么UDP数据包? Kafka 使用 TCP 作为传输。 Flume 也没有路由器的概念。
    猜你喜欢
    • 1970-01-01
    • 2012-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-24
    • 2015-01-11
    • 1970-01-01
    相关资源
    最近更新 更多