簡體   English   中英

Kafka Consumer Deserializer 是否必須匹配 Producer Serializer?

[英]Does Kafka Consumer Deserializer have to match Producer Serializer?

消費者使用的反序列化器是否必須與生產者使用的序列化器相匹配?

如果生產者將 JSON 值添加到消息中,那么消費者可以選擇使用ByteArrayDeserializerorStringDeserializeror JsonDeserializer ,而不管生產者使用哪個序列化器還是必須匹配?

如果他們必須匹配,使用不同的結果是什么? 這會導致異常、沒有數據或其他什么嗎?

它必須是兼容的,不一定是匹配的對

ByteArrayDeserializer 可以消耗任何東西。

StringDeserializer 假定 UTF8 編碼的字符串,並可能在消費時將其他類型轉換為字符串

JsonDeserializer 將嘗試解析消息並在無效 JSON 上失敗

如果你使用了 Avro、Protobuf、Msgpack 等二進制格式的消費者,那么它們也會嘗試解析消息,如果它們無法識別各自的容器,則會失敗

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM