WebSpeed
Developer’s Guide
Understanding WebSpeed Transaction Control
WebSpeed (or state-persistent) transactions allow you to maintain active context on a single WebSpeed Agent between requests by locking that Agent to a single Web client. To support WebSpeed transactions, WebSpeed uses an Agent control program. This program executes whatever Web object is specified in the WebSpeed URL for a request. In so doing, it verifies the status of the Web object in any active WebSpeed transaction, locks the Agent on behalf of the Web object that starts a WebSpeed transaction, and unlocks the Agent on behalf of any Web object that terminates the WebSpeed transaction.
To lock an Agent temporarily to a particular browser (thus starting a WebSpeed transaction), you run the function setWebState, before HTTP header output. This procedure performs two basic functions:
- It sets cookies that allow the WebSpeed Broker to identify the Web browser, the WebSpeed Agent, and the Web object that are bound in the transaction.
The cookie settings also ensure that any subsequent WebSpeed request from the transaction-bound browser are serviced by the same locked WebSpeed Agent.
- It sets a specified time-out period (in minutes) for the invoking state-aware Web object. This period is the maximum time that the Web user has between subsequent transaction requests before the transaction automatically terminates. The locked Agent keeps track of this period for all state-aware Web objects that run in the current transaction.
The transaction-bound Web client can make other Web requests, including WebSpeed requests using other Agents. However, the transaction clock runs while the browser is engaged with other requests. It can time-out if the user fails to continue the transaction within the specified time.
While the Agent is servicing requests for a WebSpeed transaction, requests made to the same URL by other Web clients cannot be serviced by that Agent until the current transaction terminates. The locked Agent continues to service both state-aware and stateless requests from the transaction-bound client, as long as those requests use the same WebSpeed Messenger.
Copyright © 2004 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |