Нужно ли вручную кэшировать реестр схем? - PullRequest
0 голосов
/ 04 мая 2018

В настоящее время мы используем буфер протокола в качестве механизма сериализации для сообщения кафак. Мы собираемся переехать в Авро. Мы протестировали потребителя Avro Confluent с помощью Schema Registry и, согласно этим тестам, потребитель Avro немного медленнее по сравнению с потребителем protobuff.

У меня вопрос: нужно ли нам обналичивать схемы вручную или Python AvroConsumer обрабатывает их самостоятельно? Я использую confluent_kafka AvroConsumer.

1 Ответ

0 голосов
/ 08 августа 2018

У меня была такая же проблема некоторое время назад, - это дополнительная задержка, когда вы переходите от Google protobuf, который действительно быстр, к чему-то вроде Avro + Schema Registry.

У вас определенно есть возможность кэшировать схемы вручную. Тем не менее, большинство достойных клиентов kafka, которые общаются со SchemaRegistry, уже должны это делать. По крайней мере, Java-клиент Confluent делает это автоматически. Таким образом, единственный раз, когда он должен отправить запрос в Реестр схемы, это когда он встречает версию схемы, которую он еще не видел.

...