Sobes.tech
Junior — Middle

Pode explicar o princípio de funcionamento do gRPC e as suas principais características?

sobes.tech IA

Resposta da IA

gRPC é um framework moderno para chamadas de procedimento remoto (RPC), desenvolvido pelo Google. Funciona sobre HTTP/2, o que garante comunicação bidirecional eficiente, multiplexação de fluxos e compressão de cabeçalhos.

Principais características do gRPC:

  • Usa Protocol Buffers (protobuf) para descrever serviços e serializar dados — um formato compacto e rápido.
  • Suporta vários tipos de chamadas: unary (uma solicitação — uma resposta), streaming do servidor, streaming do cliente e streaming bidirecional.
  • Fornece um contrato estritamente tipado entre cliente e servidor.
  • Permite gerar facilmente código em diferentes linguagens de programação.

Exemplo de um serviço gRPC simples em Go:

// Definição do serviço em protobuf
syntax = "proto3";

service Greeter {
  rpc SayHello (HelloRequest) returns (HelloReply) {}
}

message HelloRequest {
  string name = 1;
}

message HelloReply {
  string message = 1;
}

Após gerar o código, pode-se implementar o servidor e o cliente usando as interfaces geradas.