It's amazing how much work these days goes into re-inventing RPC.
HTTP API's, whether using JSON as the data encoding or not, is basically RPC. Celery is decentralized RPC. AMQP is decentralized, unreliable RPC.
It's even a buzzword: microservices are basically "let's use RPC as much as possible".
Anything highly-distributed evolves towards explicit message passing, which is basically... yep, RPC.
You would think we'd have come up with a semi-reasonable general solution by now.