- From: Steve Vinoski <vinoski@iona.com>
- Date: Mon, 24 Sep 2001 17:52:27 -0400
- To: "Jones, Matthew" <MJones@NetSilicon.com>
- Cc: <xml-dist-app@w3.org>
At 01:59 PM 9/24/01 -0700, Jones, Matthew wrote: >3. At least for an RPC use case I can't image why we would need header. >Isn't the purpose of RPC just to expose a function prototype, isn't the >Header just going to add environment that just clouds the >implementation. The example in the SOAP specification seems to be about >making the call part of a transaction, wouldn't a more straight forward >implementation have a call to initialize a transaction and return a >handle and then pass that handle into the subsequent calls. There are generally two ways to pass transaction IDs around in an RPC system: 1) declare an explicit parameter for the ID for every remote procedure you want to invoke within a transaction, or 2) pass the ID implicitly, such as in a header. The distributed system community already knows approach 1 is not workable for anything except tiny systems where all participants are completely designed, written, and maintained by a single party. It requires even intermediaries to be recoded to explicitly pass transaction IDs along. Approach 1 does not scale. Approach 2, OTOH, has been proven to work extremely well in practice, allowing even transaction-unaware applications to participate in distributed transactions. --steve ====================================================== Steve Vinoski vinoski at iona.com Chief Architect & Vice President Platform Technologies IONA Technologies, Inc. Waltham, MA USA 02451 200 West St. http://www.iona.com/hyplan/vinoski/
Received on Monday, 24 September 2001 17:52:16 UTC