Integração e API
gRPC
Opera gerando clientes e servidores a partir de arquivos .proto: métodos, mensagens e tipos são compilados para várias linguagens, enquanto HTTP/2 transporta chamadas e streams. O gRPC, lançado pelo Google em 2015, usa Protocol Buffers binário e oferece chamadas unary, client streaming, server streaming e bidirecional. Integra bem microsserviços e gateways de alta taxa, mas navegadores exigem gRPC-Web ou proxy, e a inspeção manual é menos simples que em REST/JSON.
🔀 Tipos de Comunicação
Unary
Unary RPC
Uma requisição produz uma resposta tipada, semelhante a uma chamada de função remota, com deadlines e códigos de status próprios.
S-Stream
Server streaming
O cliente envia uma solicitação e recebe uma sequência de mensagens, útil para telemetria e estados contínuos.
C-Stream
Client streaming
Várias mensagens do cliente são agregadas antes de uma resposta final, reduzindo overhead em lotes de dados.
BiDi
Streaming bidirecional
Cliente e servidor trocam sequências independentes sobre um stream HTTP/2 persistente.
✅ Vantagens Arquiteturais
⚡
Contrato fortemente tipado
Arquivos .proto reduzem divergência entre documentação e implementação e permitem geração automática de código.
⚡
Payload compacto
Protocol Buffers normalmente produz mensagens menores e mais rápidas de serializar que JSON textual.
⚡
Streaming nativo
HTTP/2 multiplexado suporta telemetria contínua e múltiplas chamadas na mesma conexão.
⚡
Controle operacional
Deadlines, cancelamento, interceptadores e metadados facilitam observabilidade e políticas de serviço.