gRPC (gRPC Remote Procedure Calls[1]) is an open source remote procedure call (RPC) system initially developed at Google in 2015[2]. It uses HTTP/2 for transport, Protocol Buffers as the message format.


In this video I want to explore gRPC, go through examples, pros and cons of gRPC.


Client/ Server communication

SOAP
HTTP (REST)
WebSockets

Client Libraries


gRPC


gRPC Demo

todos

gRPC Pros and Cons


Pros

Fast two/uni and request
Unform
One library to rule them all
Progress feedback( long synchronous requests) drop pluggable wait...)
cancel request
All benefits of H2 and Protobuff

Cons

schema based (not everyone wants schema)
Thick client - limited languages - Proxies still don’t understand it
Still young
Error handling
No native browser support
Timeouts, circuit breaker just like any RPC (pub/sub rules in this case)

Can you create your own protocol?

Spotify example with Hermes