0
所以,我可以成功地使用python confluent-kafka api來消費來自Kafka的文本編碼消息。confluent-kafka python avro消息
當我嘗試使用Avro的編碼(二進制)的消息,我得到一個異常的UnicodeDecodeError:
msg = kafka_consumer.poll(timeout=2.0)
顯然,Avro的編碼值是二進制的,不是Unicode。通過Java API,我可以爲KafkaConsumer構造函數指定一個KafkaAvroDeserializer。 Python API似乎沒有並行或類似的配置選項。
可以傳遞給底層librdkafka的配置選項似乎沒有指定任何自定義(de)序列化器或解碼器或avro相關選項。
https://github.com/edenhill/librdkafka/blob/master/CONFIGURATION.md
如何消耗使用Python匯合卡夫卡API的Avro編碼的消息?