Java 卡夫卡SimpleConsumer从频道读取时无法连接到zookeeper:Received-1

Java 卡夫卡SimpleConsumer从频道读取时无法连接到zookeeper:Received-1,java,sockets,apache-zookeeper,apache-kafka,Java,Sockets,Apache Zookeeper,Apache Kafka,我正试图通过SimpleConsumer连接到远程kafka zookeeper zookeeperhost:1234,并为我指定的主题提取元数据。但是,我得到了这个错误: RunnerMain failed :java.io.EOFException: Received -1 when reading from channel, socket has likely been closed. 我运行了telnet zookeeperhost 1234并获得以下结果: Trying <ip

我正试图通过SimpleConsumer连接到远程kafka zookeeper zookeeperhost:1234,并为我指定的主题提取元数据。但是,我得到了这个错误:

RunnerMain failed :java.io.EOFException: Received -1 when reading from channel, socket has likely been closed.
我运行了telnet zookeeperhost 1234并获得以下结果:

Trying <ip addr of host>...
Connected to zookeeperhost.somedomain.com.
Escape character is '^]'.
因此,看起来我能够访问该服务,没有安全/权限问题

这是我的密码:

SimpleConsumer consumer = new SimpleConsumer ("zookeeperhost", 1234, 100000, 64 * 1024, "leader_lookup");
List<String> topics = Collections.singletonList("some_event");
TopicMetadataRequest req = new TopicMetadataRequest(topics);
TopicMetadataResponse resp = consumer.send(req); //this is the line that is causing the error
List<TopicMetadata> metaData = resp.topicsMetadata();

默认情况下,您需要将SimpleConsumer连接到kafka leader broker端口9092,而不是zookeeper。有关如何使用SimpleConsumer的详细信息,请查看此链接:

默认情况下,您需要将SimpleConsumer连接到kafka leader broker端口9092,而不是zookeeper。有关如何使用SimpleConsumer的详细信息,请查看此链接: