# gRPC (Go) > Protocol Buffers, serviços gRPC, streaming, interceptors, tratamento de erros, metadata - 22 perguntas de entrevista - Mid-Level - [Perguntas de entrevista: Go](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista.md) ## 1. O que é gRPC? **Resposta** gRPC é um framework RPC (Remote Procedure Call) de código aberto desenvolvido pelo Google que usa HTTP/2 como protocolo de transporte e Protocol Buffers como formato de serialização padrão. Diferente do REST que usa JSON e HTTP/1.1, o gRPC oferece melhor desempenho graças ao formato binário do Protocol Buffers e aos recursos avançados do HTTP/2 (multiplexing, compressão de headers, server push). O gRPC é amplamente usado para a comunicação entre microsserviços porque suporta nativamente o streaming bidirecional, a geração de código cliente/servidor e o uso de tipos fortemente tipados. ## 2. Qual é o papel principal do Protocol Buffers no gRPC? **Resposta** Protocol Buffers (protobuf) é a linguagem de definição de interface (IDL) e o formato de serialização binária usado por padrão no gRPC. Ele permite definir a estrutura das mensagens e dos serviços em arquivos .proto, que são então compilados para gerar automaticamente código cliente e servidor em diferentes linguagens. O formato binário do protobuf é de 3 a 10 vezes mais compacto que JSON e oferece desempenho de serialização/desserialização significativamente superior (até 20 vezes mais rápido). Isso torna o gRPC particularmente adequado para comunicações de alta frequência entre microsserviços. ## 3. Qual é a diferença entre uma chamada gRPC Unary e uma chamada Server Streaming? **Resposta** Uma chamada Unary é o tipo de chamada gRPC mais simples: o cliente envia uma única requisição e recebe uma única resposta, semelhante a uma requisição HTTP REST clássica. Uma chamada Server Streaming permite ao cliente enviar uma única requisição, mas receber um fluxo (stream) de várias respostas do servidor. Por exemplo, uma API de notificações pode usar Server Streaming para enviar várias atualizações ao cliente sem que este precise fazer polling. Isso reduz a latência e a carga de rede em comparação com chamadas Unary repetidas. ## Mais 19 perguntas disponiveis - Qual pacote Go é usado para criar um servidor gRPC? - Como definir um serviço gRPC em um arquivo .proto? Cadastre-se gratis: https://sharpskill.dev/pt/login ## Outros temas de entrevista Go - [Fundamentos de Go](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/go-basics.md): 25 perguntas, Junior - [Estruturas de dados em Go](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/go-data-structures.md): 20 perguntas, Junior - [Interfaces em Go](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/go-interfaces.md): 18 perguntas, Junior - [Tratamento de erros](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/error-handling.md): 20 perguntas, Junior - [Goroutines básicas](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/goroutines-basics.md): 20 perguntas, Junior - [Channels](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/channels.md): 22 perguntas, Junior - [Go Modules](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/go-modules.md): 18 perguntas, Mid-Level - [Servidor HTTP](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/http-server.md): 24 perguntas, Mid-Level - [Cliente HTTP](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/http-client.md): 18 perguntas, Mid-Level - [Codificação JSON](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/json-encoding.md): 20 perguntas, Mid-Level - [Database/SQL](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/database-sql.md): 22 perguntas, Mid-Level - [Pacote context](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/context-package.md): 20 perguntas, Mid-Level - [Testing](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/testing.md): 22 perguntas, Mid-Level - [Padrões de concorrência](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/concurrency-patterns.md): 24 perguntas, Mid-Level - [Primitivas de sincronização](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/sync-primitives.md): 22 perguntas, Mid-Level - [Frameworks web Go](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/go-web-frameworks.md): 20 perguntas, Mid-Level - [Design de API REST](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/rest-api-design.md): 20 perguntas, Mid-Level - [Reflection](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/reflection.md): 20 perguntas, Senior - [Gerenciamento de memória](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/memory-management.md): 24 perguntas, Senior - [Otimização de desempenho](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/performance-optimization.md): 22 perguntas, Senior - [Generics](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/generics.md): 20 perguntas, Senior - [Go Design Patterns](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/design-patterns.md): 24 perguntas, Senior - [Microservices](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/microservices.md): 24 perguntas, Senior - [Segurança e autenticação](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/security-authentication.md): 24 perguntas, Senior - [Docker & Containerization](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/docker-containerization.md): 20 perguntas, Senior - [Kubernetes Basics](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/kubernetes-basics.md): 22 perguntas, Senior - [Go Avançado](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/advanced-go.md): 20 perguntas, Senior - [Desenvolvimento de CLI](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/cli-development.md): 20 perguntas, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/grpc