Distributed computing and Java go together naturally. As the first language designed from the bottom up with networking in
mind, Java makes it very easy for computers to cooperate. Even the simplest applet running in a browser is a distributed
application, if you think about it. The client running the browser downloads and executes code that is delivered by some other
system. But even this simple applet wouldn't be possible without Java's guarantees of portability and security: the applet can run
on any platform, and can't sabotage its host.
Of course, when we think of distributed computing, we usually think of applications more complex than a client and server
communicating with the same protocol. We usually think in terms of programs that make remote procedure calls, access remote
databases, and collaborate with others to produce a single result. Java Distributed Computing discusses how to design and
write such applications. It covers Java's RMI (Remote Method Invocation) facility and CORBA, but it doesn't stop there; it
tells you how to design your own protocols to build message passing systems, discusses how to use Java's security facilities,
how to write multi-threaded servers, and more. It pays special attention to distributed data systems, collaboration, and
applications that have high bandwidth requirements.
In the future, distributed computing can only become more important. Java Distributed Computing provides a broad
introduction to the problems you'll face and the solutions you'll find as you write distributed computing applications.
Topics covered in Java Distributed Computing:
Introduction to Distributed Computing
Distributed Objects (Overview of CORBA and RMI)
Message Passing Systems
Distributed Data Systems (Databases)
Bandwidth Limited Applications