- gRPC is an open source RPC framework originally developed by Google in 2015. It uses HTTP/2 for transport, Protocol Buffers as the interface definition language, and provides features like authentication, bidirectional streaming and interface definitions.
- Compared to REST, gRPC is faster, more efficient through binary encoding (Protocol Buffers), supports bidirectional streaming, and generates client and server code. However, it lacks browser support and has fewer available tools.
- gRPC is best suited for internal microservices communication where high performance is required and tight coupling is acceptable. It supports unary, server streaming, client streaming and bidirectional streaming RPC patterns.