An RPC-based methodology for client/server application development in C++

The remote procedure call (RPC) is a commonly used mechanism for client/server applications. RPC implements a tightly synchronized client/server interaction that is analogous to the well-understood procedure call in regular non-distributed applications. The underlying principle common to all RPC-based tools and standards is that both the client and the server share a common IDL (Interface Definition Language) file. Automatic tools process the IDL file and generate source files that, when compiled with the application, ensure client/server run-time compliancy. We introduce an RPC methodology for C++ client/server applications that follows a different pattern-the sharing of C++ base classes-in place of an IDL file. This releases the developer from the dependence on, and need to learn complex RPC tools and standards. C++ programmers should find this approach sufficient for most of their distributed-application development needs.

[1]  John Dilley Object-Oriented Distributed Computing with C++ and OSF DCE , 1993, DCE Workshop.

[2]  Uri Shani,et al.  Wrapping DCE/OSF Client/Server Applications , 1994, USENIX Applications Development Symposium.

[3]  Andrew Birrell,et al.  Implementing Remote procedure calls , 1983, SOSP '83.