使用 Avro 格式传递 Kafka 消息要比 Json 更加高效,因为它是二进制格式,在启用了 Confluent Schema Registry 的情况下,会进一步地提升传输效率,因为 Avro 中的 Schema 信息将不再出现在消息中,消息体积会进一步压缩,同时,还可以利用到 Schema Registry 的其他好处,例如 Schema Evolution 管理。文章来源:https://www.toymoban.com/news/detail-824278.html
但是,由于 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 消息的一个示例:文章来源地址https://www.toymoban.com/news/detail-824278.html
# 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 )的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!