Web Service Transactions - PowerPoint PPT Presentation

1 / 16
About This Presentation
Title:

Web Service Transactions

Description:

Usage Scenario. 8. Provider Transaction Attitudes ... Example: Usage Scenario follows. 13. Extensions to WSDL ... Examples tx: transaction='Pending-Commit' ... – PowerPoint PPT presentation

Number of Views:76
Avg rating:3.0/5.0
Slides: 17
Provided by: ajayd
Category:

less

Transcript and Presenter's Notes

Title: Web Service Transactions


1
Web Service Transactions
  • Group Members
  • Nirmit Desai
    Ajay Dudani
  • Sandeep Kachru
    Kunal Shah
  • March 6, 2003

2
Outline of the talk
  • Introduction
  • Transactions for Web Services
  • Transactional Attitudes Overview
  • Example of a system with Transactional Attitudes
  • Questions Comments

3
Introduction
  • A transaction is a mechanism to insure all the
    participants in an application achieve a mutually
    agreed outcome
  • Web Services provide a distributed computing
    environment
  • Support for transactions are fundamental to
    reliable distributed computing environments

4
Transactions for Web Services
  • Web Services are message oriented middleware, as
    compared to object oriented middleware like CORBA
  • Existing solutions of Web Service transactions
    are limited
  • Restricted programming flexibility
  • Transactions are supported in application rather
    than in middleware
  • Increased application complexity
  • No QoS guarantees
  • There is no way to specify interdependence
    between different web service

5
Transactional Attitudes Overview
  • Implement transactions as web service
  • Total possible attitudes for transaction models
    supported is limited
  • Have predefined set of possible transaction
    attitudes
  • Provider Transaction Attitudes
  • Pending Commit
  • Group Pending Commit
  • Commit compensate
  • Client Transaction Attitudes
  • Implicit Transaction Attitudes
  • Explicit Transaction Attitudes

6
Transactional Attitudes Overview (2)
  • In order to have support for transactions, one
    needs
  • Operations that are provided by provider for
    transaction support
  • Information on how these operations map to
    transaction state machine
  • Information of transaction outcome and its
    interpretation
  • We use extensions to WSDL to incorporate some of
    the above requirements
  • Extensions to WSDL help up identify the
    operations provided for transaction support and
    transaction attitude supported by the provider
  • Lets look at some examples to understand this

7
Outline of the talk
  • Introduction
  • Transactions for Web Services
  • Transactional Attitudes Overview
  • Example of a system with Transactional Attitudes
  • Provider Transaction Attitudes
  • Client Transaction Attitudes
  • Extensions to WSDL
  • Usage Scenario

8
Provider Transaction AttitudesPending Commit
  • In pending commit PTA, there exists a single
    forward operation that can be held in pending
    state until the following event that determines
    if the transaction is success or failure
  • Example Airline systems

Book Ticket
Initial State
Block Ticket
Cancel Ticket
9
Provider Transaction AttitudesGroup Pending
Commit
  • In group pending commit PTA, there exists a
    multiple forward operation that can be held in
    pending state until the following event that
    determines if the transaction is success or
    failure
  • Example Taxi booking

Book taxi reservation
Reserve taxi from A to B
Reserve taxi from B to C
Reserve taxi from C to D
Cancel taxi reservation
10
Provider Transaction AttitudesCommit Compensate
  • In commit compensate PTA, there is no
    transaction model supported by the provider.
    The only way to rollback the previous
    transaction is to cancel it.
  • Example Hotel Reservation

Reserve Room 1
Initial State
Commit Operation
Cancel Room Reservation
Initial State
Commit Compensate Operation
11
Client Transaction AttitudesImplicit Client
Attitude
  • In implicit CTA, i.e. in the absence of
    transaction web service framework, the client
    implicitly describes output of transactional
    operations on the provider and manages the
    rollback conditions on its own
  • Example
  • Send request to block 2 flights
  • Send request to book one hotel room
  • Send request to book taxi
  • If both flights are booked and also hotel is
    booked, then commit all operations
  • If either of airline or hotel booking fails then
    rollback all operations

12
Client Transaction AttitudesExplicit Client
Attitude
  • In explicit CTA, i.e. in the presence of
    transaction web service framework, the client
    informs the transaction web service of the
    transactions it wants to perform and defines the
    success condition of the transactions. All the
    rest is handled by the transaction web service.
  • Example Usage Scenario follows

13
Extensions to WSDL
  • Extensions to WSDL are used to specify the
    transaction attitude supported by the provider
    and to mark an operation as prepare operation,
    commit operation, rollback operation
  • Examples
  • lttx transactionPending-Commitgt
  • lttxforwardOperationgt blockFlight
    lt/txforwardOperationgt
  • lttxcommitOperationgt reserveFlight
    lt/txcommitOperationgt
  • lttxabortOperationgt cancelFlight
    lt/txabortOperationgt
  • lttxcompensateOperationgt cancelRoom
    lt/txcompensateOperationgt

14
Usage Scenario
15
Usage Scenario (2)
16
References
  • Transactional Attitudes Reliable Composition of
    Autonomous Web Services by Thomas Mikalsen,
    Stefan Tai, Isabelle Rouvellou
  • Conditional Messaging Extending Reliable
    Messaging with Application Conditions by Stefan
    Tai, Thomas Mikalsen, Isabelle Rouvellou, Stanley
    M. Sutton Jr.
  • Question Comments
Write a Comment
User Comments (0)
About PowerShow.com