本文主要是介绍查看 Avro 格式的 Kafka 消息(启用了 Confluent Schema Registry ),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
使用 Avro 格式传递 Kafka 消息要比 Json 更加高效,因为它是二进制格式,在启用了 Confluent Schema Registry 的情况下,会进一步地提升传输效率,因为 Avro 中的 Schema 信息将不再出现在消息中,消息体积会进一步压缩,同时,还可以利用到 Schema Registry 的其他好处,例如 Schema Evolution 管理。
但是,由于 Avro 是二进制格式,且使用了 Confluent Schema Registry 后 Schema 信息也被剥离,使用 kafka-console-consumer.sh
输出的消息都是乱码,无法阅读,这会给开发和调试带来一些麻烦。正确查看 Avro 消息的方法是使用 Confluent Schema Registry 提供的一个命令行工具: kafka-avro-console-consumer
,这个工具是内置在 cp-schema-registry 这个组件中的,不管是手动安装还是使用 Docker 启动 cp-schema-registry 后,都可以直接使用该命令输出 Kafka 的 Avro 消息,类似于 kafka-console-consumer
。以下是以 docker 形式登录 cp-schema-registry 后输出 Avro 消息的一个示例:
# connect to a confluentinc/cp-schema-registry container, open bash for input commands.
docker run -it --rm confluentinc/cp-schema-registry
这篇关于查看 Avro 格式的 Kafka 消息(启用了 Confluent Schema Registry )的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!