tags: #publish links: [[Software and Tech]] created: 2020-09-22 Tue --- # gRPC Google RPC - faster, usually-binary alternative to HTTP ## Features Specify methods with parameters and return types. Makes client generation very easy. By default, uses Protocol Buffers as Interface Definition Language (IDL). Optionally, JSON. Four types of method: - Unary RPC (function call) - [[gRPC Streaming API]]: - Server Streaming RPC - Client Streaming RPC - Bidirectional Streaming RPC Opaque key-value pair metadata about the call. Deadlines / timeouts and cancellation by either party. Clients and server are explicitly allowed to disagree on status/success, e.g. due to different view of timeouts and network issues. Channels, like open HTTP connections.