Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Oracle concurrence control
Greetings to all on the newsgroup --
concurrecny control and stateless web serving - I think the only solution is to reduce as far as possible the statelessness of the situation i.e. to shortern the time between checking to see whether a room is booked and actually booking it. Although this sounds obvious, it really is the only solution short of having a completely invisible process (where the user is only told of a double-booking-induced failure after trying to book).
Keeping the whole process invisible right up to the point of booking lets you offload most of the cleverness to Oracle, because it will know if a room is booked or not. Because you only have to trap for one kind of error (inability to update the table etc. etc.) , you should be able to make the whole process of [trying to book and reporting a failure when it occurs] quite lightweight and fast.
Imagine if the user could try and book near instaneously. It wouldn't take them too long to find a free slot. You could of course create a snapshot / semi-static page of the current bookings - perhaps updating it every half our or hour.
Doing this saves you the classic mistake of coming up with ever more complicated and awkward shared and intent / shared-intent locking schemes. These are frowned upon in Oracle circles, make no doubt about it.
Hope that gives you food for thought. Received on Sun Jan 02 2000 - 23:35:44 CST
![]() |
![]() |