Плоские буферы
-
Обзор FlatBuffers
- FlatBuffers — это библиотека сериализации, аналогичная другим популярным форматам, таким как Protocol Buffers и Thrift.
- Она поддерживает десериализацию «с нулевым копированием», что ускоряет доступ к данным.
- Обработка данных в FlatBuffers обычно требует больше кода, чем в других форматах, и некоторые операции мутации невозможны.
-
Особенности формата
- Сериализованный формат позволяет произвольный доступ к элементам данных без анализа всего файла.
- В отличие от Protocol Buffers, FlatBuffers кодирует целые числа в фиксированном размере, что повышает производительность, но увеличивает размер файла.
-
Совместимость и использование
- FlatBuffers поддерживает множество языков программирования, включая C++, C#, C, Go, Java и другие.
- Компилятор схем работает на различных операционных системах, включая Android и iOS.
- Изначально FlatBuffers разрабатывались для игр и подобных приложений, но теперь используются в широком спектре программных продуктов.
-
Поддержка и применение
- Cocos2d-x использует FlatBuffers для сериализации игровых данных.
- Android-клиент Facebook также использует FlatBuffers для хранения данных.
- Формат JSON ранее не подходил для этих задач из-за низкой производительности.
-
Дополнительные ресурсы
- Статья содержит ссылки на портал бесплатного программного обеспечения с открытым исходным кодом и сравнение форматов сериализации.
Полный текст статьи: