lat*_*des 5 apache-kafka kafka-producer-api
我需要在我的 Kafka 设置中更改值序列化器/反序列化器(出于测试目的,我一直在使用 IntegerSerializer/IntegerDeserializer)。使用 JAVA API,它完全按预期工作;但是,当使用控制台工具时,它似乎无法正常工作。
我所做的所有故障排除使我得出一个结论:似乎 kafka-console-producer 忽略了 Serializer 选项。我已经尝试过--property value.serializer,--producer-property value.serializer并--value-serializer在带有--producer.config参数的配置中设置它。
它不仅无法将数据序列化为整数,它甚至不在乎我是否输入无意义作为参数值。使用 kafka-console-consumer(与它的 IntegerDeserializer 完美配合),如果我输入--value-deserializer not.a.real.class它会抛出一个未找到类的异常;但是--value-serializer not.a.real.class在 kafka-console-producer 上,什么都不做。
在 JAVA API 中的生产者上设置这些值,效果很好(如果我输入无意义作为序列化器类,则会抛出异常),但在使用 kafka-console-producer 时则不然。
这是我尝试运行控制台生产者的方法之一的示例:
kafka-console-producer --broker-list IPADDRESS:9092 --topic TOPIC --property value.serializer=org.apache.kafka.common.serialization.IntegerSerializer
Run Code Online (Sandbox Code Playgroud)
以及相关消费者:
kafka-console-consumer --bootstrap-server IPADDRESS:9092 --topic TOPIC --property value.deserializer=org.apache.kafka.common.serialization.IntegerDeserializer
Run Code Online (Sandbox Code Playgroud)
有没有人设法使用命令行工具使其工作?有什么明显的我遗漏了吗?
| 归档时间: |
|
| 查看次数: |
3683 次 |
| 最近记录: |