1 dépôt
Rules governing the layout and ordering of data fields within a serialized binary format.
Explore 1 awesome GitHub repository matching data & databases · Serialization Protocols. Refine with filters or upvote what's useful.
Protocol Buffers est un mécanisme neutre vis-à-vis du langage et indépendant de la plateforme pour sérialiser des données structurées. Il fournit une chaîne d'outils pilotée par schéma qui compile des définitions de données déclaratives en code source typé, permettant une communication cohérente et des contrats d'API fortement typés entre des services écrits dans différents langages de programmation. Le projet se distingue par un format binaire très efficace qui utilise un encodage basé sur des balises et une compression d'entiers à largeur variable pour minimiser la taille de la charge utile et la surcharge de traitement. Il prend en charge une gestion robuste des schémas évolutifs, permettant aux développeurs de mettre à jour les structures de données de manière incrémentale tout en maintenant la compatibilité ascendante et descendante. Ceci est soutenu par un système d'édition versionné qui gère les ensembles de fonctionnalités et la logique de sérialisation à travers les composants logiciels distribués. Au-delà de sa sérialisation binaire de base, le projet inclut des capacités pour la conversion JSON canonique avec validation de schéma, un contrôle granulaire de la visibilité des symboles et le suivi de la présence des champs pour distinguer les valeurs par défaut des valeurs non définies. Il fournit également des optimisations spécialisées, telles que la gestion de la mémoire basée sur des arènes pour les implémentations C++, afin d'améliorer les performances lors de la création et du nettoyage d'arbres de messages complexes.
Defines flexible field ordering rules that allow for efficient binary data layout and parsing.