ANÁLISE ACERCA DO FRAMEWORK GRPC (GOOGLE REMOTE PROCEDURE CALL): COMPARAÇÕES E DESEMPENHOS
RESUMO A adoção crescente de arquiteturas de microsserviços trouxe à tona limitações concretas do modelo REST sobre HTTP/1.1, protocolo que dominou a integração de aplicações web por décadas. Serialização em JSON, ausência de multiplexação nativa e cabeçalhos verbosos representam gargalos reais em sistemas de alto volume. O gRPC, framework open source desenvolvido pelo Google, propõe uma alternativa fundamentada em HTTP/2 e Protocol Buffers: serialização binária compacta, multiplexação de requisições em conexão única e contratos de interface estritamente tipados em arquivos .proto. Este trabalho analisa o gRPC sob a perspectiva de arquitetura de software, comparando-o ao REST em termos de eficiência de serialização, suporte a comunicação bidirecional e desempenho em sistemas distribuídos. Além da revisão de literatura baseada em documentação técnica oficial e publicações especializadas, foram conduzidos testes práticos de carga com a ferramenta k6 em um sistema bancário implementado nas duas abordagens. Os resultados apontam redução de até 90% na latência média e 50% no volume de dados transferidos pelo gRPC frente ao REST. Contudo, o protocolo apresenta limitações relevantes: suporte restrito em navegadores web, necessidade de compartilhamento de arquivos .proto entre equipes e menor facilidade de depuração. A escolha entre os dois protocolos deve partir dos requisitos concretos do sistema. Palavras-chave: gRPC. Microsserviços. Protocol Buffers. REST. HTTP/2. Arquitetura de Software. Definir como serviços se comunicam é uma das decisões arquiteturais com maior impacto prático em sistemas distribuídos. Essa escolha afeta latência, consumo de banda, facilidade de depuração e até a dinâmica de trabalho entre equipes. Por anos, o padrão REST sobre HTTP/1.1 com JSON respondeu bem a essa demanda — simples de adotar, amplamente documentado e compatível com qualquer cliente HTTP. O gRPC organiza a comunicação entre serviços como chamadas de Uma das diferenças mais práticas entre gRPC e REST está nas A comparação entre gRPC e REST não é uma questão de qual é melhor em absoluto — é uma questão de contexto. Cada protocolo tem vantagens claras em cenários distintos. Para avaliar empiricamente as diferenças entre os protocolos, Os resultados estão consolidados na tabela abaixo: O resultado mais expressivo foi a latência no cenário de listagem de Os resultados deste trabalho mostram que o gRPC entrega ganhos reais AHMAD, Arslan. API Design for Beginners: Understanding REST, GraphQL, and gRPC. Stackademic, 2026. Disponível em: https://medium.com/stackademic/api-design-for-beginners-understanding-rest-graphql-and-grpc-8485b52b0c4c. Acesso em: abr. 2026. GRPC.IO. Introduction to gRPC. 2026. Disponível em: https://grpc.io/docs/what-is-grpc/introduction/. Acesso em: abr. 2026. INDRASIRI, Kasun; KURUPPU, Danesh. gRPC: Up and Running. Sebastopol: JHA, Shubham. REST vs gRPC: The Architecture Decision That Defines Your Microservices Performance. Medium, 2026. Disponível em: https://medium.com/@shubhamjha642/rest-vs-grpc-the-architecture-decision-that-defines-your-microservices-performance-e5ad8376b53c. Acesso em: abr. 2026. MICROSOFT. gRPC – .NET. Microsoft Learn, 2026. Disponível em: https://learn.microsoft.com/pt-br/aspnet/core/grpc/. Acesso em: abr. 2026. MICROSOFT. gRPC for WCF Developers. dotnet-architecture eBooks, 2026. Disponível em: https://docs.microsoft.com/dotnet/architecture/grpc-for-wcf-developers/. Acesso em: abr. 2026. SILVA, J. P. gRPC (Google Remote Procedure Call): estrutura universal de código aberto. 2025. VIEIRA, Jean Vitor. GestaoBancariaRest. GitHub, 2026a. Disponível em: https://github.com/jeanvitorvieira/GestaoBancariaRest. Acesso em: abr. 2026. VIEIRA, Jean Vitor. GestaoBancariaGrpc. GitHub, 2026b. Disponível em: https://github.com/jeanvitorvieira/GestaoBancariaGrpc. Acesso em: abr. 2026. API (Application Programming Interface): conjunto de definições e protocolos que viabiliza a integração entre sistemas de software, expondo funcionalidades de forma padronizada. gRPC (Google Remote Procedure Call): framework de código aberto mantido pelo Google para chamadas de procedimento remoto entre sistemas distribuídos, baseado em HTTP/2 e em Protocol Buffers. HPACK: algoritmo de compressão de cabeçalhos HTTP especificado para o HTTP/2, responsável por reduzir a sobrecarga de metadados nas requisições. HTTP/2: segunda versão do protocolo HTTP, que introduz multiplexação, compressão de cabeçalhos e server push sobre uma única conexão TCP. JSON (JavaScript Object Notation): formato textual de intercâmbio de dados, legível por humanos, amplamente adotado em APIs REST. Microsserviço: estilo arquitetural em que uma aplicação é estruturada como um conjunto de serviços pequenos, autônomos e implantáveis de forma independente. Multiplexação: capacidade de transmitir múltiplas requisições e respostas simultaneamente sobre uma mesma conexão de rede. Protocol Buffers: mecanismo de serialização binária desenvolvido pelo Google, orientado à definição estrita de contratos por meio de arquivos .proto. REST (Representational State Transfer): estilo arquitetural para sistemas distribuídos baseado em HTTP, que utiliza métodos padronizados e representações, tipicamente em JSON. RPC (Remote Procedure Call): paradigma de comunicação em que um programa invoca procedimentos executados em outro espaço de endereçamento, de forma análoga a uma chamada local. Serialização: processo de conversão de estruturas de dados ou objetos em um formato transmissível pela rede ou armazenável em disco. Streaming: modalidade de comunicação em que os dados são transmitidos continuamente como fluxo, em vez de em uma única resposta completa.
