Exploring the most modern protocols for communicating between applications and services such as JSON-RPC, pub/sub, gRPC and comparing them to much more