Remote Procedure Call josedacruz, July 15, 2023 Remote Procedure Call is a technique that allows a program to invoke a procedure or a function on another machine. Abstracts the details of the communication (protocols, sockets, serialization) The main components are the client stub, server stub, and communications module. Client Stub: This is a proxy for the remote function. (marshaling and unmarshalling data) Server Stub: This is a proxy on the server side for the actual function (unmarshalling and marshaling data). Communications Module: handles communication, errors, and timeouts. Pros: modularity, scalability, performance, and reusability; great for distributed solutions. Cons: Binary protocols can be an issue for some companies (firewalls). Examples: gRPC, XML-RPC, Java RMI, CORBA, DCOM, SOAP, JSON-RPC, and REST Related architecture architecturedcomenterprisearchitecturegrpcrpc