Apache kafka Apache Kafka:正在获取相关id为0的主题元数据
我使用以下代码向我的卡夫卡发送了一条消息:Apache kafka Apache Kafka:正在获取相关id为0的主题元数据,apache-kafka,Apache Kafka,我使用以下代码向我的卡夫卡发送了一条消息: def getHealthSink(kafkaHosts: String, zkHosts: String) = { val kafkaHealth: Subscriber[String] = kafka.publish(ProducerProperties( brokerList = kafkaHosts, topic = "health_check", encoder = new StringEncod
def getHealthSink(kafkaHosts: String, zkHosts: String) = {
val kafkaHealth: Subscriber[String] = kafka.publish(ProducerProperties(
brokerList = kafkaHosts,
topic = "health_check",
encoder = new StringEncoder()
))
Sink.fromSubscriber(kafkaHealth).runWith(Source.single("test"))
}
val kafkaHealth = getHealthSink(kafkaHosts, zkHosts)
我收到了以下错误消息:
获取主题的主题元数据时出错kafka.utils.utils$
来自经纪人的[设置(健康检查)]
[ArrayBuffer(id:0,主机:***,端口:9092)]失败
kafka.common.KafkaException:获取主题的主题元数据
来自经纪人的[设置(健康检查)]
[ArrayBuffer(id:0,主机:***,端口:9092)]失败
您知道问题出在哪里吗?错误消息非常不清楚,但基本上,“获取主题元数据”是制作人要做的第一件事,这意味着制作人要首先建立与卡夫卡的连接 您尝试连接的代理很可能已关闭,或者存在其他连接问题(端口、防火墙、dns等)
在不相关的新闻中:您似乎正在使用过时的Scala producer。我们建议转到新的Java生产者(org.apache.kafka.clients.KafkaProducer)谢谢。这是一个从虚拟机连接的问题。至于卡夫卡,我在网上看到了很多理论资料。但是,关于如何编写与Kafka管理的服务器通信的代码,仍然没有足够的代码示例或教程。你能提供一些好的链接,为这一目的提供好的指导吗?