CBOR vs MessagePack: Qual formato binário?
O CBOR é um formato binário padronizado pela IETF (RFC 8949) com tags de tipo ricas; o MessagePack é um formato binário compacto e amplamente adotado, com amplo suporte de bibliotecas.
O CBOR (RFC 8949) é projetado para padronização, extensibilidade via tags e uso em dispositivos com recursos limitados, e sustenta protocolos como COSE e WebAuthn. O MessagePack o precede, é extremamente compacto e tem suporte de bibliotecas muito amplo entre linguagens. O CBOR ganha em padronização e extensibilidade; o MessagePack ganha em amplitude de adoção e tamanho mínimo.
| CBOR | MessagePack | |
|---|---|---|
| Padrão | IETF RFC 8949 | Spec de facto |
| Extensibilidade | Tags ricas | Tipos de extensão |
| Adoção | Forte (COSE, IoT) | Muito ampla |
| Tamanho | Compacto | Muito compacto |
| Melhor para | Padrões, IoT | Amplo suporte de bibliotecas |
Caso de uso e padrões
O CBOR é adequado para casos de uso que precisam de um padrão IETF, tags semânticas ou alinhamento com COSE/WebAuthn e IoT com recursos limitados. O MessagePack é adequado para equipes que querem as bibliotecas mais amplamente disponíveis e os menores payloads sem uma exigência formal de padrão.
Adequação a ops e CI
Ambos são formatos binários schema-free com suporte de bibliotecas entre linguagens. Testes de interop de round-trip rodam em CI, onde runners gerenciados mais rápidos encurtam as verificações de serialização entre linguagens.
O veredito
Quer um padrão IETF com tags ricas e adequação a ecossistema de IoT/segurança: CBOR. Quer as bibliotecas mais amplas e tamanho mínimo: MessagePack. Padronização favorece o CBOR; amplitude de adoção favorece o MessagePack.