Aller au contenu
uencoder

MessagePack

MessagePack est un format efficace de sérialisation binaire, similaire à JSON mais plus compact, avec un support multilingue, utilisé pour le RPC et le cache.

Objectif

Fournir une sérialisation plus petite et plus rapide que JSON pour le RPC et le cache à haute performance.

Mécanisme

Un marqueur de type à un octet distingue nil, bool, entiers, flottants, chaînes, tableaux d'octets, tableaux et cartes. Les petits entiers positifs/négatifs utilisent un fixint d'un octet ; les chaînes courtes utilisent fixstr. Il n'est pas auto-descriptif (un schéma ou une convention est nécessaire) mais plus compact que JSON.

Cas d’usage

  • Valeurs sérialisées dans Redis
  • RPC Thrift/MsgPack
  • Communication de serveurs de jeux
  • Échange de données embarquées

Exemples

  • entrée
    {"a":1}
    Output
    81 a1 61 01

    A map with one pair

Erreurs courantes

The lack of a schema causes cross-language type mismatches
Use an IDL or explicit type conventions

Termes associés

Outils associés

References