Explain RPC like I'm Five

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

Procedure:

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

Remote:

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 Aug 2

Changelog for developers?

Potential way to help teams work together on projects

READ POST
Follow @scottharrisondev to see more of their posts in your feed.
dev.to is now open source!
View Announcement Post View GitHub Repo
Martin Becker
stuffffffffffffffffffff.
Trending on dev.to
Explain Knowledge Transfer vs Documentation like I'm five
#discuss #explainlikeimfive
What's your origin story?
#career #learn #webdev
What is the simplest code to explain a loop?
#basics #anylang #discuss
Explain Blockchains, Cryptocurrencies Like I'm Five
#explainlikeimfive
What are/were your go to resources for learning Ruby and Rails?
#discuss #ruby
Why haven't you gone to a development conference?
#discuss #webdev #conferences
SHE CAN CODE!
#womenintech #shecoded #career #discuss
Explain Grunt Task Runner Like I'm Five
#explainlikeimfive #javascript #discuss