Zum Inhalt springen
uencoder

MessagePack

MessagePack ist ein effizientes Binärserialisierungsformat, ähnlich wie JSON, aber kompakter, mit Unterstützung vieler Sprachen, verwendet für RPC und Caching.

Zweck

Serialisierung bereitzustellen, die kleiner und schneller als JSON ist, für leistungsstarkes RPC und Caching.

Mechanismus

Ein Ein-Byte-Typmarker unterscheidet nil, bool, Ganzzahlen, Floats, Strings, Byte-Arrays, Arrays und Maps. Kleine positive/negative Ganzzahlen nutzen Ein-Byte-Fixint; kurze Strings nutzen Fixstr. Es ist nicht selbstbeschreibend (ein Schema oder eine Konvention ist nötig), aber kompakter als JSON.

Anwendungsfälle

  • Serialisierte Redis-Werte
  • Thrift/MsgPack-RPC
  • Spieleserver-Kommunikation
  • Embedded-Datenaustausch

Beispiele

  • Eingabe
    {"a":1}
    Output
    81 a1 61 01

    A map with one pair

Häufige Fehler

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

Verwandte Begriffe

Verwandte Tools

References