- From: Champion, Mike <Mike.Champion@SoftwareAG-USA.com>
- Date: Thu, 9 Jan 2003 07:33:17 -0700
- To: www-ws-arch@w3.org
> -----Original Message----- > From: Walden Mathews [mailto:waldenm@optonline.net] > Sent: Thursday, January 09, 2003 9:04 AM > To: Champion, Mike; www-ws-arch@w3.org > Subject: Re: Proposed text on reliability in the web services > architecture > > > Network application developers who don't want to think about network > failures should find a different line of work. The Waldo > paper has been > cited enough times already. Well, I've read the Waldo paper several times, most recently last week. "Hiding the network" by trying to pretend that partial failures don't happen (e.g., a write occurs but the network dies before the success code can be propagated) is clearly a Bad Thing and leads to the problems of NFS that he notes. I'm merely asserting that there is a middle ground: that non-RPC Web services that *do* have a rich notion of error notitification can be used in a way that puts the bulk of the mechanical burden on the infrastructure (e.g. WS-Reliability or WS-Transact) and simply forces the application to deal with indeterminate status codes, asynchronous notification of success/failure, two-phase commit protocols, or whatever. Clearly Waldo has a lot to teach us, e.g. about the desirability of designing systems so that updates are idempotent. I don't follow the assertion that this doesn't require redesign from the ground up in systems that weren't designed that way; that's the whole POINT of his NFS example, no? Anyway, as I said in the draft, a clear statement of how RESTful applications can work well without assuming a reliable infrastructure, and what are some of the principles of designing robust systems that handle network failure gracefully (without necessarily assuming any particular architectural style) would be much appreciated. Just recall that many of the use cases for Web services include the integration of applications that CANNOT be redesigned. If you can debunk my mistaken assertions that REST doesn't work for this use case, go for it.
Received on Thursday, 9 January 2003 09:33:57 UTC