[
Lists Home |
Date Index |
Thread Index
]
> -----Original Message-----
> From: Mark Baker [mailto:distobj@acm.org]
> Sent: Sunday, December 30, 2001 5:25 PM
> To: jackpark@thinkalong.com
> Cc: xml-dev@lists.xml.org
> Subject: Re: [xml-dev] XML "tuple spaces" alpha technology
> demonstrated
>
>
> but before we run off and create something
> new, I'd ask you all to consider that HTTP itself is a protocol that
> implements a coordination language similar to Linda in some important
> ways, but with some additional important characteristics that Linda
> never considered that may explain why it got deployed and Linda
> didn't.
I (and I suspect the RogueWave and JXTA-spaces people as well) would
completely agree that any XML "spaces" solution must either be layered on
HTTP/WebDAV or have an HTTP binding to have any chance at success.
JavaSpaces dependence on Jini was almost certainly the largest nail in its
coffin. [I'd also assert that it's reliance on strong typing makes it less
useful in a loosely coupled environment than Linda or Ruple, but that's
another thread :~) ]
I think of the various XML spaces as being at the layer above SOAP -- they
provide an additional layer of services that doesn't come for free in HTTP
or SOAP, and a Linda-like coordination protocol would have about the same
architectural relationship to SOAP as RPC has. Specifically, the various
"spaces" implementations offer the basic read/GET and write/PUT operations
that HTTP does, but also:
- "take" (GET and DELETE in an atomic operation),
- associative lookup (XML databases such as Tamino do this with XPath on top
of HTTP, but it's not part of HTTP or WebDAV at present)
- "leases" (automatic cleanup of entries that nobody "takes" after a
specified period of time)
- security (Ruple adds digital signature support for encryption an
non-repudiability).
Wouldn't using raw HTTP as the coordination protocol require some more
sophisticated application-level logic to provide analogous services? As
Gavin has noted, this is not easy for ordinary developers to grok, so a
"spaces" service layer on top of HTTP makes sense to me.
|