Explain RPC like I'm Five

・1 min read

I'm having a little trouble understanding RPC, especially compared to say Rest API's or using protobufs to send and receive data, so please explain RPC like I'm Five?

Did you find this post useful? Show some love!

RPC == Remote Procedure Call


A function or method that does something meaningful and worth the efforts. Has knowledge about your business logic.

Procedure Call:

The action of invoking a function/method to execute the logic contained within


Not in close proximity.

Remote Procedure Call:

Invoking a function/method that is not in proximity to the caller.

Proximity in Context of code:

--------------ENV 1----------------
Method A
Method B
--------------ENV 1----------------

-------------------ENV 2----------------
Method C
Method D
-------------------ENV 2----------------

Between ENV 1 and ENV 2,

  • methods A & B are in proximity i.e. within the same execution environment
  • methods C & D are in proximity i.e. within the same execution environment
  • methods C & D are remote to methods A & B, and vice-versa

The execution environments are capable of communication among themselves via a given medium, which can be

  • Inter-process communication
  • Over the wire (HTTP)
  • a few more

Any invocation methods A & B within ENV 2, and any invocation methods C & D within ENV 1, is to be referred to as RPC.

Classic DEV Post from Sep 6 '18

7 Tips To Make You A Better Developer and Development Instructor

A few weeks ago I wrote a blog post here at DEV on 3 Ways to Make Money While L...

Martin Becker

Thanks for visiting dev.to

A Beginner's Guide to dev.to