Les deux sont des bibliothèques de sérialisation et sont développés par les développeurs Google. Y a-t-il une grande différence entre eux? Est-ce beaucoup de travail de convertir du code à l'aide de Protocol Buffers pour utiliser FlatBuffers ?
Les deux sont des bibliothèques de sérialisation et sont développés par les développeurs Google. Y a-t-il une grande différence entre eux? Est-ce beaucoup de travail de convertir du code à l'aide de Protocol Buffers pour utiliser FlatBuffers ?
Réponses:
J'ai écrit une comparaison détaillée de quelques systèmes de sérialisation, y compris Protobufs et FlatBuffers, ici:
https://kentonv.github.io/capnproto/news/2014-06-17-capnproto-flatbuffers-sbe.html
Cependant, la comparaison se concentre davantage sur la comparaison des trois nouveaux systèmes de sérialisation «zéro copie» et inclut principalement Protobufs comme point de référence. De plus, je suis l'auteur de Cap'n Proto, et aussi l'auteur de Protobufs v2 (j'étais responsable de l'open sourcing Protobufs chez Google), donc la comparaison peut être biaisée.
Notez que Protobufs est utilisé dans tous les services de Google, alors que FlatBuffers est plus un projet expérimental qui, à mon avis, n'a pas été largement adopté en interne.
Protocol Buffers
dans les projets. Après avoir vérifié les actualitésFlatBuffers
et le projetGithub
, j'ai trouvé qu'il était expérimental comme vous l'avez dit et qu'il n'était pas très chaud, alors j'ai également recherché la comparaison des performances entrePB
etFB
et posté cette question. Merci pour la comparaison! Cela signifie beaucoup! Et je ne peux pas être plus d'accord avec labenchmark
section de votre messagethe relative performance of these libraries depends deeply on the use case
.