Lists Home |
Date Index |
- From: "Box, Don" <email@example.com>
- To: "'firstname.lastname@example.org'" <email@example.com>, firstname.lastname@example.org
- Date: Wed, 8 Mar 2000 13:22:33 -0800
Title: RE: XML over HTTP: SOAP and ...?
> -----Original Message-----
> From: Jim Ancona [mailto:email@example.com]
> Sent: Wednesday, March 08, 2000 7:11 AM
> To: firstname.lastname@example.org
> Subject: RE: XML over HTTP: SOAP and ...?
> --- Miles Sabin <email@example.com> wrote:
> > The critical issue for any RPC mechanism whatsoever (SOAP,
> > IIOP, RMI, DCOM etc.) is that, unlike local calls, remote calls
> > can fail. That means there'll always be a conflict between
> > transparency (making remote calls look like local calls) and
> > recoverability (dealing with network failures *as* network
> > failures rather than as failures at the application-level).
> The definitive paper on this problem is "A Note on Distributed
> Computing" by Jim Waldo, Geoff Wyant, Ann Wollrath, and Sam Kendall.
> It's well worth reading for anyone working on distributed systems.
I love that paper. BTW, it also appears at the end of the JINI specification from Addison Wesley.
> From the abstract:
> "We argue that objects that interact in a distributed system
> need to be
> dealt with in ways that are intrinsically different from objects that
> interact in a single address space. These differences are required
> because distributed systems require that the programmer be aware of
> latency, have a different model of memory access, and take
> into account
> issues of concurrency and partial failure."
That pretty much captures the state of affairs in that space. It's interesting to see the distributed object world walking away from classic OO concepts and techniques. Things like Enterprise Java Beans, Servlets, and MTS/COM+ all force you out of the traditional class/entity ideas of circa-1980's object-orientation.
> It's available at:
> Some of the authors are the designers of RMI, so RMI at least tries to
> deal with these issues.
Actually, JavaSpaces (and to a lesser degree JINI and EJB) tries to deal with these isses, RMI does not. RMI is simply a java-centric version of an ORPC protocol much like DCOM and CORBA. Its ironic that Waldo and Wollrath wrote that document in 1994 and then went off and did RMI. Perhaps they viewed RMI as simply the substrate for JavaSpaces and friends that would come later on.