Search code examples
rpc

Remote Procedure Calls vs. Local Procedure Calls


What are the differences between RPC (Remote Prpcedure Calls) and LPC (Local Procedure Calls)?


Solution

  • Read their respective Wikipedia pages:

    RPC - https://en.wikipedia.org/wiki/Remote_procedure_call

    LPC - https://en.wikipedia.org/wiki/Local_Procedure_Call

    Everything is explained there. First put some effort into it and if you get stuck you can still pose a non-trivial questions.

    Differences:

    • RPC is slower than LPC since it uses the network to invoke the method.
    • With RPC the procedure call can be executed on a remote machine which can be addressed in several ways.
    • The parameters and return value need to be serializable (to use java terminology).
    • RPC's can fail due to network issues.
    • RPC's need to be set up before using them.
    • The language used to call the remote procedure and the language implementing the remote procedure are not necessarily the same.
    • and more.