Buffer de protocolo

Definição - o que significa o buffer de protocolo?

Um buffer de protocolo é um mecanismo automatizado de plataforma e linguagem neutra para serializar dados estruturados. Um buffer de protocolo é menor, mais simples e mais rápido que XML. Inicialmente desenvolvido no Google para lidar com um protocolo de resposta de servidor de indexação, a empresa forneceu um gerador de código sob uma licença de código aberto para diferentes idiomas. Buffers de protocolo são extremamente úteis para desenvolver aplicativos para armazenamento de dados ou para comunicação.

Definirtec explica o buffer de protocolo

Atualmente, os buffers de protocolo suportam código gerado em linguagens de programação como C ++, Java e Python. Buffers de protocolo são projetados para serem menores e mais rápidos do que XML e visam simplicidade e desempenho. Semelhante aos protocolos Microsoft Bond ou Apache Thrift, os buffers de protocolo oferecem uma pilha de protocolos RPC concreta a ser usada para serviços definidos. Um buffer de protocolo usa uma linguagem de descrição de interface que explica a estrutura de dados e um aplicativo que gera o código-fonte com base nessa descrição. O código-fonte é então usado na análise dos bytes dos dados estruturados.

Existem várias vantagens de usar buffers de protocolo em vez de XML. Os buffers de protocolo são mais simples de usar e são 3 a 10 vezes menores que o XML, com velocidade de 20 a 100 vezes. Outra vantagem é que eles são menos ambíguos e podem gerar classes de acesso a dados que são simples de desenvolver programaticamente.

Existem algumas desvantagens associadas aos buffers de protocolo. Os buffers de protocolo podem não ser uma solução eficaz, especialmente para modelar um documento baseado em texto. Ao contrário do XML, que é legível e editável por humanos, os buffers de protocolo em seu estado nativo não são legíveis ou editáveis ​​por humanos. Os buffers de protocolo não têm um recurso autoexplicativo como XML.

Buffers de protocolo são usados ​​em sistemas de armazenamento e também em sistemas RPC.