Яка різниця між буферами протоколу та площинними буферами?


Відповіді:


126

Я написав докладне порівняння кількох систем серіалізації, включаючи Protobufs та FlatBuffers, тут:

https://kentonv.github.io/capnproto/news/2014-06-17-capnproto-flatbuffers-sbe.html

Однак порівняння зосереджується більше на порівнянні трьох нових систем серіалізації «з нульовою копією» і включає протобуфи здебільшого як опорну точку. Також я є автором Cap'n Proto, а також автором Protobufs v2 (я відповідав за відкриті джерела пошуку протобуфів в Google), тому порівняння може бути необ’єктивним.

Зауважте, що Protobufs використовується у власних сервісах Google, тоді як FlatBuffers - це скоріше експериментальний проект, який, наскільки я розумію, не отримав широкого поширення всередині країни.


Привіт, пане Варда, дуже дякую за коментарі! І дякую за ці дуже корисні інструменти з відкритим кодом! Як постійний користувач, я використовую чудове Protocol Buffersв проектах. Перевіривши новини про FlatBuffersпроект та проект Github, я виявив, що, як ви сказали, експериментальний і не дуже гарячий, тому я також шукав порівняння продуктивності між PBта FBта опублікував це питання. Дякую за порівняння! Це багато значить! І я не можу більше погодитися з benchmarkрозділом у вашій публікації the relative performance of these libraries depends deeply on the use case.
видобуток

8
він може не бути широко прийнятим, але тест виглядає досить непогано. Ігрова бібліотека з відкритим кодом cocos2d-x зараз успішно використовує її. Я думаю, що Flatbuffer пройшов експериментальну фазу
user18853

3
@KentonVarda, якісь нові оновлення для порівнянь з FlatBuffers з червня 2014 року?
TJR

@TJR: Я не встигав за цим. Напевно, купа змінилася. Я радий включити будь-які оновлення, якщо хтось повідомить мені, що слід оновити.
Кентон Варда

11
Згідно з цією статтею Facebook використовує Facebook в рамках програми Android .
Алекс Че
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.