gpt4 book ai didi

apache-kafka - kafka 0.8.2.0 的默认序列化程序

转载 作者:行者123 更新时间:2023-12-04 02:37:48 27 4
gpt4 key购买 nike

我正在使用他们新的 KafkaProducer API 设置 Kafka 生产者并收到以下错误

Exception in thread "main" org.apache.kafka.common.config.ConfigException: Missing required configuration "key.serializer" which has no default value.
at org.apache.kafka.common.config.ConfigDef.parse(ConfigDef.java:124)
at org.apache.kafka.common.config.AbstractConfig.<init>(AbstractConfig.java:48)
at org.apache.kafka.clients.producer.ProducerConfig.<init>(ProducerConfig.java:235)
at org.apache.kafka.clients.producer.KafkaProducer.<init>(KafkaProducer.java:129)
at com.kafka.producer.App.KafkaProducer(App.java:43)
at com.kafka.producer.App.main(App.java:33)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)

似乎没有默认的序列化程序和文档 http://kafka.apache.org/documentation.html#newproducerconfigs我没有看到可能的值。

这个问题是针对 Kafka 0.8.2.0 版本的

最佳答案

Kafka 的早期版本带有默认的序列化程序,但这造成了很多困惑。

对于 0.8.2,您需要自己从 API 附带的 StringSerializer 或 ByteArraySerializer 中选择一个序列化程序,或者构建您自己的序列化程序。

API 序列化程序可以在以下位置找到
字符串序列化器:
http://kafka.apache.org/082/javadoc/org/apache/kafka/common/serialization/StringSerializer.html
ByteArraySerializer:
http://kafka.apache.org/082/javadoc/org/apache/kafka/common/serialization/ByteArraySerializer.html

因此,如果您希望使用默认序列化程序,您的解决方案是使用以下选项之一。

props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");

或者
props.put("key.serializer", "org.apache.kafka.common.serialization.ByteArraySerializer");

关于apache-kafka - kafka 0.8.2.0 的默认序列化程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28755309/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com