----- Original Message ----- 
From: "Tom Chiverton" <[EMAIL PROTECTED]>
To: <flexcoders@yahoogroups.com>
Sent: Friday, September 15, 2006 3:36 PM
Subject: Re: [flexcoders] Data synchronisation tip and tricks?


> On Thursday 14 September 2006 16:12, Jurgen Beck wrote:
> > I see two solutions:
>
> I have actually seen the 2nd in use on (I think) ticketmaster - during
check
> out it told me the seats were reserved for 20 minutes, and if I hadn't
payed
> by then I'd lose them and they'd go back in the pool.
>
> You could probably calculate the chance of a collitsion based on the
length of
> time it takes to do a booking, how many customers there are (at once) and
how
> many seats there are.
> If the chance in low, and fairly simple 'soft reserve' like the above or
you
> option 2 is going to be best, I feel.
> OTOH, if collisions are going to be frequent, you want to be more
proactive to
> help the users out - but at the end of the day, two people might just
> press 'submit' at the same time, and one of them is going to get a rolled
> back transaction and 'please choose another seat'. The other party may
back
> out later, but there isn't much I think you can do about that.

Depending on the checkout process you can prevent the rollback altogether.
This all depends on how the checkout process black box works.

If the checkout process is a black box that can communicate back with the
ticketing system for confirmation that the product is still available:

Ticketing system marks seats as 'pending booking' and sets a timeout on this
status to protext the seats from booking.
Ticketing system passes request to the checkout process to get the money
from the user.
Checkout process processes everything, apart from requesting money from the
bank.
User presses 'submit' to confirm transaction and payment details.
Checkout process asks ticketing system to confirm transaction can proceed
and tells ticketing system how long it will need (max) to complete the
checkout process upon confirmation by the ticketing system.
Ticketing system checks that seats are still available and that timeout has
not elapsed.
If the timeout left on the seats is less than the time required to complete
the checkout (no more human involvement is now required) the timeout is
extended.
If the timeout has expired, the ticketing system will check that the seats
are still available to the requesting customer and will re-reserve the
seats, pending booking with enough of a timeout for the checkout process to
complete.
If the timeout has expired and the seats are no longer available the
ticketing system informs checkout to abort and not to take the customers
money, otherwise the ticketing system tells the checkout process to complete
the transaction.
The checkout process informs ticketing system of the result and the
ticketing system will update the seat status and interact with the customer
accordingly.

Paul

> -- 
> Tom Chiverton
> Helping to confidentially create open-source bandwidth
>
> ****************************************************
>
> This email is sent for and on behalf of Halliwells LLP.
>
> Halliwells LLP is a limited liability partnership registered in England
and Wales under registered number OC307980 whose registered office address
is at St James's Court Brown Street Manchester M2 2JF.  A list of members is
available for inspection at the registered office. Any reference to a
partner in relation to Halliwells LLP means a member of Halliwells LLP.
Regulated by the Law Society.
>
> CONFIDENTIALITY
>
> This email is intended only for the use of the addressee named above and
may be confidential or legally privileged.  If you are not the addressee you
must not read it and must not use any information contained in nor copy it
nor inform any person other than Halliwells LLP or the addressee of its
existence or contents.  If you have received this email in error please
delete it and notify Halliwells LLP IT Department on 0870 365 8008.
>
> For more information about Halliwells LLP visit www.halliwells.com.
>
>
>
> --
> Flexcoders Mailing List
> FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
> Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com
> Yahoo! Groups Links
>
>
>
>
>
>
>
>
>
>
>




--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/flexcoders/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/flexcoders/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:[EMAIL PROTECTED] 
    mailto:[EMAIL PROTECTED]

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 



Reply via email to