Thursday, April 16, 2020

Remote Procedure Call - Starting Telemetry

Remote procedure call (RPC) architecture is popular in building salable and distributed client/server model applications. RPC allows a client to a make procedure call to a server on a different address space without understanding the network configuration as if the server was in the same network (making a local procedure call). RPC packages all have a simple goal: to make the process of executing code on a remote machine as simple and straightforward as calling a local function. Thus, to a client, a procedure call is made, and some time later, the results are returned. The server simply deļ¬nes some routines that it wishes to export. The rest of the magic is handled by the RPC system, which in general has two pieces: a stub generator (sometimes called a protocol compiler), and the run-time library.

The earliest computing models utilizing Remote Procedure Calls to frame network operations dates back to early ARPANET documents in the 1970’s, with practical applications of the technology appearing in the 1980’s. The term itself was coined by Bruce Jay Nelson in 1981, and was used to describe the system, saying: "Remote procedure call is the synchronous language-level transfer of control between programs in disjoint address spaces (Local and Remote) whose primary communication medium(TCP/IP/UDP) is a narrow channel."

RPC is a protocol that allows one to relay problems in the same format regardless of whether it is being calculated locally or remotely.

Below is the list of advantages of Remote Procedure Call:
1. RPC supports process oriented and thread oriented models.
2. Internal messaging Pipeline of RPC is hidden from the user.
3. Uses more computational power.
4. Built for local as well as for distributed environment.
In the next post, I will be covering more about gRPC (google remote procedure call). So stay tuned.

People who read this post also read :

No comments: