Kafka测试问题Producer数据send不到kafka中 --Version 2.3.0

Kafka测试问题之Producer数据send不到kafka中

原先Kafka中的/config/server.properties 中配置listeners=PLAINTEXT://:9092 没有对其进行修改
Kafka测试问题Producer数据send不到kafka中 --Version 2.3.0_第1张图片
测试Kafka是否能够连接通畅,操作如下:

创建 topic:

bash kafka-topics.sh --create --bootstrap-server localhost:9092  --topic MyTopicOne --replication-factor 1 --partitions 3

创建Producer

bash kafka-console-producer.sh  --broker-list 192.168.0.30:9092  --topic MyTopicTwo

在这里插入图片描述
创建Consumer

bash kafka-console-consumer.sh  --topic MyTopicTwo --bootstrap-server 192.168.0.30:9092  --from-beginning

在这里插入图片描述
结果:
通过Console可以测试通过,之后通过代码进行测试

测试代码如下:

if (args.length == 0) {
            System.out.println("YOU HIVE TO INPUT YOUR TOPIC");
            System.exit(1);
        }

        Properties conf = new Properties();
//        conf.put("--broker-list","192.168.0.30:9094");
        conf.put("bootstrap.servers", "192.168.0.30:9092");
//        conf.put("zookeeper","192.168.0.28:2181");
        conf.put("acks", "all");
//        conf.put("topic", args[0]);
        conf.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
        conf.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer");


        KafkaProducer kafkaClient = new KafkaProducer(conf);
        for (int i = 0; i < 10; i++) {
            kafkaClient.send(new ProducerRecord("MyTopicTwo", Integer.toString(i), Integer.toString(i + 1)));
            System.out.println("HIVE SEND ONE MESSAGE");
        }
        kafkaClient.close();

发现并不报错,但是kafka中的console消费者并没有接受到数据,在/tmp/kafka-log中对应Topic文件夹中的.log 也无数据 而且Kafka server日志也无错误???:
Kafka测试问题Producer数据send不到kafka中 --Version 2.3.0_第2张图片
难受了。。。

之后想起来kafka中只管去pull数据,并不会去处理是否发送成功,所以并不会报错,所以怀疑自己kafka配置有问题,之后查看配置发现该配置没有设置host,又一次被自己的**所折服。。哎
Kafka测试问题Producer数据send不到kafka中 --Version 2.3.0_第3张图片
更改如下:
在这里插入图片描述

你可能感兴趣的:(kafka)