# gRPC (Go) > Protocol Buffers, gRPC-services, streaming, interceptors, foutafhandeling, metadata - 22 gespreksvragen - Mid-Level - [Gespreksvragen: Go](https://sharpskill.dev/nl/technologies/go/sollicitatievragen.md) ## 1. Wat is gRPC? **Antwoord** gRPC is een open-source RPC-framework (Remote Procedure Call) ontwikkeld door Google dat HTTP/2 als transportprotocol en Protocol Buffers als standaard serialisatieformaat gebruikt. Anders dan REST, dat JSON en HTTP/1.1 gebruikt, biedt gRPC betere prestaties dankzij het binaire formaat van Protocol Buffers en de geavanceerde HTTP/2-functies (multiplexing, headercompressie, server push). gRPC wordt veel gebruikt voor communicatie tussen microservices omdat het bidirectionele streaming, client/server-codegeneratie en sterk getypeerde interfaces native ondersteunt. ## 2. Wat is de belangrijkste rol van Protocol Buffers in gRPC? **Antwoord** Protocol Buffers (protobuf) is de Interface Definition Language (IDL) en het binaire serialisatieformaat dat standaard in gRPC wordt gebruikt. Hiermee kun je de structuur van berichten en services definiëren in .proto-bestanden, die vervolgens worden gecompileerd om automatisch client- en servercode in verschillende talen te genereren. Het binaire formaat van protobuf is 3 tot 10 keer compacter dan JSON en biedt aanzienlijk betere serialisatie-/deserialisatieprestaties (tot 20 keer sneller). Dat maakt gRPC bijzonder geschikt voor hoogfrequente communicatie tussen microservices. ## 3. Wat is het verschil tussen een Unary gRPC-aanroep en een Server Streaming-aanroep? **Antwoord** Een Unary-aanroep is het eenvoudigste gRPC-aanroeptype: de client stuurt één verzoek en ontvangt één antwoord, vergelijkbaar met een klassiek HTTP REST-verzoek. Een Server Streaming-aanroep stelt de client in staat één verzoek te sturen, maar een stream van meerdere antwoorden van de server te ontvangen. Een notificatie-API kan bijvoorbeeld Server Streaming gebruiken om meerdere updates naar de client te sturen zonder dat die hoeft te pollen. Dat verlaagt de latentie en netwerkbelasting ten opzichte van herhaalde Unary-aanroepen. ## Nog 19 vragen beschikbaar - Welk Go-package wordt gebruikt om een gRPC-server te maken? - Hoe definieer je een gRPC-service in een .proto-bestand? Meld je gratis aan: https://sharpskill.dev/nl/login ## Andere Go-sollicitatieonderwerpen - [Go-basis](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/go-basics.md): 25 vragen, Junior - [Go-datastructuren](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/go-data-structures.md): 20 vragen, Junior - [Go-interfaces](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/go-interfaces.md): 18 vragen, Junior - [Foutafhandeling](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/error-handling.md): 20 vragen, Junior - [Goroutines-basis](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/goroutines-basics.md): 20 vragen, Junior - [Channels](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/channels.md): 22 vragen, Junior - [Go Modules](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/go-modules.md): 18 vragen, Mid-Level - [HTTP-server](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/http-server.md): 24 vragen, Mid-Level - [HTTP-client](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/http-client.md): 18 vragen, Mid-Level - [JSON-codering](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/json-encoding.md): 20 vragen, Mid-Level - [Database/SQL](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/database-sql.md): 22 vragen, Mid-Level - [context-pakket](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/context-package.md): 20 vragen, Mid-Level - [Testing](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/testing.md): 22 vragen, Mid-Level - [Concurrency-patronen](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/concurrency-patterns.md): 24 vragen, Mid-Level - [Synchronisatieprimitieven](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/sync-primitives.md): 22 vragen, Mid-Level - [Go-webframeworks](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/go-web-frameworks.md): 20 vragen, Mid-Level - [REST API-ontwerp](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/rest-api-design.md): 20 vragen, Mid-Level - [Reflection](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/reflection.md): 20 vragen, Senior - [Geheugenbeheer](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/memory-management.md): 24 vragen, Senior - [Prestatie-optimalisatie](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/performance-optimization.md): 22 vragen, Senior - [Generics](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/generics.md): 20 vragen, Senior - [Go Design Patterns](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/design-patterns.md): 24 vragen, Senior - [Microservices](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/microservices.md): 24 vragen, Senior - [Beveiliging en authenticatie](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/security-authentication.md): 24 vragen, Senior - [Docker & Containerization](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/docker-containerization.md): 20 vragen, Senior - [Kubernetes Basics](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/kubernetes-basics.md): 22 vragen, Senior - [Geavanceerd Go](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/advanced-go.md): 20 vragen, Senior - [CLI-ontwikkeling](https://sharpskill.dev/nl/technologies/go/sollicitatievragen/cli-development.md): 20 vragen, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/nl/technologies/go/sollicitatievragen/grpc