当前位置: 首页 > 知识库问答 >
问题:

kafka用户无法通过远程接收消息

阎晗日
2023-03-14

嗨,我是Kafka的新手,我有一个快速的问题。

我实现了一个kafka生产者和消费者zookeeper和生产者在另一个服务器(192.168.10.233)中运行,消费者在另一个服务器(192.168.10.234)中运行,两者都是本地连接的

def listen(): Unit = {
    val props = new Properties();
    props.put("bootstrap.servers", "192.168.10.233:9092");
    props.put("group.id", "groupId");
    props.put("enable.auto.commit", "true");
    props.put("auto.commit.interval.ms", "1000");
    props.put("session.timeout.ms", "30000");
    props.put("key.deserializer", "org.apache.kafka.common.serialization.StringDeserializer");
    props.put("value.deserializer", "org.apache.kafka.common.serialization.StringDeserializer");
    val consumer = new KafkaConsumer(props);

    println("calling ---- but yet to receive the message")

    consumer.subscribe(List("test"));
    while (true) {
      val records = consumer.poll(100);
      for (record <- records)
      println("offset = %d, key = %s, value = %s", record.offset(), record.key(), record.value());
    }

  }

我还从外面查了192.168.10.233:9092,港口是否没有被任何东西堵塞。

共有1个答案

慕震博
2023-03-14

最有可能的情况是,您必须将kafka/config/server.properties中的adversed.host.name设置为可从外部路由的值。

 类似资料:
  • 我在远程机器上设置了Kafka和动物园管理员。在那台机器上,我可以看到下面使用官方网站上的测试方法工作。 但是当我使用本地消费者脚本时,它就不起作用了: 我试着把它改成: 然后运行客户端使用者脚本,它会给出错误: [2017-08-11 15:49:01,591]获取相关id为3的元数据时警告错误:{listings-incoming=leader_not_available}(org.apach

  • 问题内容: 我已经在服务器上安装了Kibana 5.4和Elastic search 5.4,我可以通过使用本地计算机上的curl来访问Kibana和Elastic search 我得到以下回应 var hashRoute =’/ app / kibana’; var defaultRoute =’/ app / kibana’; var hash = window.location.hash;

  • 我已经在服务器上安装了Kibana 5.4和Elastic search 5.4,我可以使用 我得到以下回应 var hashRoute='/app/kibana'; var defaultRoute='/app/kibana'; var hash=window.location.hash; if(hash.length){window.location=hashRoute hash;}其他{wi

  • 我是一个使用python进行套接字编程的初学者。我正在做我的课程项目。我的项目的一部分需要用不同的端口发送和接收UDP消息。提供了名为robot的服务器程序,我需要编写名为student的客户端程序,它可以与机器人进行交互。因此,我不能显示服务器程序中的所有源代码。 这是服务器程序中与UDP套接字相关的部分 这是我的客户端程序。s3 是 UDP 套接字。我可以成功地向服务器程序发送消息,但无法从中

  • 我正在尝试使用js文件中的以下代码从我的机器上的meteor应用程序连接远程数据库: 将引发以下错误: 错误:EACCES,在object.future.wait处取消链接++os.linux.x86_64+web.browser+web.cordova/meteor-tool-os.linux.x86_64/tools/files.js:1124:24)在object.files.rm_recu

  • 我正在开发一个使用JMS作为消息传递层的应用程序。我还使用glassfish来托管jms/mq后端。该应用程序能够使用我最初设置的glassfish 3.1服务器中的连接工厂和主题进行发布/订阅消息传递。我现在有了glassfish (4.1)的另一个实例,它托管了一组新的应用程序使用的新功能,但是我仍然需要使用第一个glassfish服务器广播的消息。事实上,客户端使用特定于glassfish