Short explanation focusing on gRPC and it’s implementation in Akka (Scala). gRPC is a transport mechanism for request / response and (non-persistent) streaming use cases. Akka gRPC is Open Source and available under the Apache 2 License.
It is a schema-first RPC framework, where your protocol is declared in a protobuf service descriptor, and requests and responses will be streamed over an HTTP/2 connection.
It has several advantages, including Schema-first design favors well-defined and decoupled service interfaces over brittle ad-hoc solutions; Protobuf-based wire protocol is efficient, well-known, and allows compatible schema evolution; Based on HTTP/2 which allows multiplexing several data streams over a single connection.
It is great for:
- Connections between internal services
- Connecting to external services that expose a gRPC API (even ones written in other languages)
- Serving data to web or mobile front-ends
To get more information how it compares to REST, SOAP, Message Bus and Akka Remoting follow the link to original source. Easy!
[Read More]