Я работаю над приложением, в котором нам нужно отправить некоторые данные с клиента, а также с сервера на клиент. Клиент находится на C ++, а сервер на Java. Данные будут в реальном времени и в микропартиях; Итак, производительность — наша главная забота. Мы рассматривали Avro как формат сериализации. Проблема в том, что наши данные будут очень маленькими, но схема будет достаточно большой. Avro отправляет схему каждый раз, когда отправляет данные. Это сделало бы наш файл данных большим, без необходимости.
Вопросы:
1.) Можно ли в Avro отправлять только данные и версию схемы? И хранить схему на клиенте и сервере отдельно.
2.) Есть ли другой метод сериализации данных, который я должен рассмотреть здесь, вместо Avro?
3.) Будет ли простой формат JSON с последующим сжатием его более компактным, чем формат Avro, для данного конкретного случая использования?
Задача ещё не решена.