Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
The art of distributed applications
Corbin J., Springer-Verlag New York, Inc., New York, NY, 1991. Type: Book (9780387972473)
Date Reviewed: Jun 1 1992

The information in this book is intended for developers of distributed applications using SUN’s Remote Procedure Call (RPC) library. The book is a supplement to the standard documentation on the SUN RPC library. It describes how to implement distributed applications on the SunOS 4.0 version of the library. Readers do not need a background in computer communication or familiarity with the UNIX operating system. All the necessary background is provided in the book. Readers should be familiar with basic programming concepts and with the C programming language, however.

The book does not teach concepts, theory, or methodology of programming a distributed application; instead, it serves as an excellent, well-illustrated manual for the RPC library. It is an indispensable reference for a system developer or programmer who is developing a distributed application using Sun’s RPC. It is unlikely to be used as a text in a course on distributed systems (except a lab course). It is an invaluable aid to both new and experienced users of Sun’s RPC library, however.

Chapter 1 provides an overview of Sun’s RPC library and the client-server model and discusses the issues involved in the implementation of a distributed application. Chapter 2 discusses external data representation (normally called XDR), which is primarily used to represent the arguments and the results in a machine-independent manner in an RPC. The author describes XDR in detail and provides a thorough reference to XDR. Chapter 3 presents Sun’s RPC protocols. It covers the important topic of the portmapper, which describes how a client binds to a service. Chapter 4 discusses RPC programming, which uses the RPC mechanism to invoke procedures on computers. It describes the mechanisms for naming the computers and encoding and decoding RPC procedures’ arguments and values. It also describes high-level programming, which makes it easy to implement a distributed application because a programmer does not have to worry about low-level details. Low-level RPC programming is discussed in chapter 5. In low-level programming, a programmer has more control and flexibility in programming a distributed application. This chapter covers the transport interface, low-level RPC routines, processing RPC library errors, and authentication.

Chapter 6 discusses additional RPC library features; several examples illustrate their use. These features include asynchronous RPC, broadcast RPC, batching, writing private science routines, and routines to communicate with the portmapper. Chapter 7 describes “rpcgen,” a compiler that generates the code that interfaces with the RPC library. Chapter 8 explains how to use the RPC library and rpcgen to write distributed applications. It describes how to design, implement, and test a distributed application. This chapter must be read by a developer of distributed applications using the RPC library. Finally, chapter 9 covers future directions in RPC programming. Several appendices provide detailed specifications of various aspects of the Sun RPC.

The author lavishly uses figures and examples to illustrate the use of RPC library. The chapters could have had more exercises. The title of the book is not appropriate. A better title would be Programming distributed applications on Sun’s RPC library.

Overall, this book is excellent for designers and developers of distributed applications using Sun’s RPC facilities. The book is also valuable as a text for a lab course on distributed systems. For pure researchers, however, the book provides little--it is mainly for hands-on professionals and practitioners.

Reviewer:  M. Singhal Review #: CR115213
Bookmark and Share
 
Distributed Applications (C.2.4 ... )
 
 
Network Communications (C.2.1 ... )
 
 
Sun Rpc Library (D.4.9 ... )
 
 
General (D.4.0 )
 
 
Local and Wide-Area Networks (C.2.5 )
 
Would you recommend this review?
yes
no
Other reviews under "Distributed Applications": Date
Client-server computing
Sinha A. Communications of the ACM 35(7): 77-98, 1992. Type: Article
Jan 1 1994
APPC/MVS distributed application support
Voss F. IBM Systems Journal 31(2): 381-408, 1992. Type: Article
May 1 1994
Experience with Grapevine: the growth of a distributed system
Schroeder M., Birrell A., Needham R. ACM Transactions on Computer Systems 2(1): 3-23, 1984. Type: Article
Feb 1 1985
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy