Java 无法发布来自KafkaProducer的消息

Java 无法发布来自KafkaProducer的消息,java,apache-kafka,kafka-producer-api,Java,Apache Kafka,Kafka Producer Api,我无法发送卡夫卡制作人的消息。我的配置不起作用,如下所示: Properties属性=新属性(); setProperty(“bootstrap.servers”,“127.0.0.1:9092”); properties.setProperty(“key.serializer”,StringSerializer.class.getName()); properties.setProperty(“value.serializer”,StringSerializer.class.getName()

我无法发送卡夫卡制作人的消息。我的配置不起作用,如下所示:

Properties属性=新属性();
setProperty(“bootstrap.servers”,“127.0.0.1:9092”);
properties.setProperty(“key.serializer”,StringSerializer.class.getName());
properties.setProperty(“value.serializer”,StringSerializer.class.getName());
属性。设置属性(“acks”、“1”);
属性。设置属性(“重试”,“3”);
properties.setProperty(“linger.ms”、“1”);
制片人=
新org.apache.kafka.clients.producer.KafkaProducer(属性);
生产记录生产记录=
新产品记录(“第二个主题”、“3”、“消息测试”);
Future s=producer.send(producerRecord);
producer.flush();
producer.close();
这是我执行s.get()之后的错误


默认情况下,已在Kafka Producer中启用了大小为16K字节的批处理。但是,在代码中,您只发送一条可能不满足批处理大小的记录

因此,为了使代码正常工作,请尝试将以下属性“batch.size”添加到值“0”到Kafka Producer属性中

properties.setProperty("batch.size", "0");
这将禁用批处理机制,并允许制作者将记录写入Kafka代理


注意:在实时情况下,禁用批处理将增加对代理的写入请求数量,并降低生产者和服务器的I/O吞吐量和性能。

会发生什么?是否有任何错误?请在关闭生产者或发送多个生产者之前尝试运行
s.get()
message@MickaelMaison没有任何错误。@MickaelMaison这是我的错误。@cricket\u 007在你的指示下我得到了这个
properties.setProperty("batch.size", "0");