Claims
- 1. A system configured to facilitate communication between a browser and a process instance, the process instance being configured to run computer processes for performing communication operations, the browser having a network interface for communicating with entities via a network, which may include an application server, comprising:
a cluster of multi threaded process instances, wherein each instance is configured to communicate with a browser sending a browser request, to access a database, and to communicate with and monitor other process instances in the cluster; and a cluster monitoring instance configured to monitor the operating states of each instance in the cluster and to enable state-related operations among the instances of the cluster.
- 2. A system according to claim 1, wherein each process instance making up the cluster of multi threaded process instances is configured to determine whether another process instance has terminated operation, and is configured to facilitate recovery of the operation of a process instance that has terminated operation.
- 3. A system according to claim 1, wherein the cluster monitoring instance is configured to determine whether a process instance has terminated operation, and wherein the monitoring instance further includes a recovery mechanism configured to facilitate recovery of the operation of a process instance that has terminated operation.
- 4. A system according to claim 1, wherein the cluster monitoring instance is configured to perform scheduled termination of operation of a process instance, and wherein the monitoring instance further includes a recovery mechanism configured to facilitate recovery of the operation of the terminated process instance.
- 5. A system according to claim 1, further comprising a session monitoring instance configured to monitor a session between a process instance and a browser, wherein the session monitoring instance is configured to determine whether the process instance has terminated operation during the session, and wherein the session monitoring instance further includes a recovery mechanism configured to facilitate recovery session with an alternative process instance.
- 6. A system according to claim 1, further comprising a routing instance configured to route incoming browser requests to process instances, a session monitoring instance configured to monitor a session between a process instance and a browser, wherein the session monitoring instance is configured to determine whether the process instance has terminated operation during the session, and a recovery mechanism configured to facilitate recovery session with an alternative process instance.
- 7. A system according to claim 1, further comprising a webserver configured to facilitate a session between a browser and a process instance, the webserver including a session routing instance configured to route incoming browser requests to process instances, a session monitoring instance configured to monitor a session between a process instance and a browser, wherein the monitoring instance is configured to determine whether the process instance has terminated operation during the session, and wherein the webserver further includes a recovery mechanism configured to facilitate recovery session with an alternative process instance.
- 8. A system according to claim 7, further including a rerouting instance configured to send browser session information to an alternative process instance in the event of a premature end of a session.
- 9. A system according to claim 7, further comprising a session recovery mechanism configured to transfer browser session information to another process instance in the event of a premature termination of process instance operation, wherein the other process instance is configured to assume and resume the browser session in a manner that is transparent to a user operating a browser device.
- 10. A system according to claim 1, wherein each process instance has access to cache storage, and wherein the cluster of multi threaded instances are configured to synchronize access to objects stored in cache storage.
- 11. A system according to claim 1, wherein each process instance has access to cache storage, and where the access to an object that is accessible by the cluster of multithreaded process instances is governed by a synchronization server to maintain the integrity of the object.
- 12. A system according to claim 1, further comprising a session monitoring instance configured with a monitoring mechanism that allows a webserver to monitor activities of a session between a process instance and a browser.
- 13. A system according to claim 1, further comprising a webserver configured monitor and to redirect a session that is occurring between a process instance and a browser and that is being monitored to another process instance to take over the ongoing session.
- 14. A system according to claim 1, further comprising an administrative instance configured to govern the settings of the cluster of process instances.
- 15. A system according to claim 1, wherein the cluster of process instances are configured to communicate with a database, the database having an administrative directory configured to contain status information of each process instance within the cluster of process instances.
- 16. A system according to claim 1, wherein the cluster of process instances are configured to communicate with a database, the database having an administrative directory configured to contain status information of each process instance within the cluster of process instances, wherein a process instance is configured to retrieve status information from the administrative directory to determine whether another process instance has terminated operation.
- 17. A system according to claim 1, wherein the cluster of process instances are configured to communicate with a database, the database having an administrative directory configured to contain status information of each process instance within the cluster of process instances, wherein a process instance is configured to retrieve status information from the administrative directory to determine whether another process instance has terminated operation and configured to initiate a recovery process in the event that another process instance has terminated operation.
- 18. A system according to claim 15, wherein the process instances is configured to communicate with the database to send status information to be stored in the administrative directory, the process instance having a local cache storage and a local administrative directory, and wherein the process instance is configured to retrieve status information from the administrative directory by copying the status information of another process instance into a local administrative directory.
- 19. In a system including a server being configured to run instances of computer processes for performing communication operations, such as transactions with a database for example, and a browser having a network interface for communicating with entities via a network, which may include an application server, a method of facilitating communication between a browser and a process instance, comprising:
receiving a request from a webserver for a browser session with a process instance; establishing a monitoring thread that allows a webserver to monitor the browser session between the browser and the process instance; initiating a browser session between the browser and the process instance; monitoring the browser session; and if the session prematurely terminates, redirecting the ongoing session to an alternate process instance.
- 20. A method according to claim 19, further comprising
determining an object to be accessed in response to the request from the webserver; searching a local object storage for the object; and determining whether the process instance has write lock privilege to write lock the object.
- 21. A method according to claim 20, further comprising:
if the process instance has write lock privilege, conducting write operations on the object.
- 22. A method according to claim 20, further comprising, if the process instance does not have write lock privilege, and if the process instance is the synchronization server, storing the object as write locked in the local lock table, and conducting write operations on the object.
- 23. A method according to claim 20, further comprising, if the process instance does not have write lock privilege, and if the process instance is not the synchronization server, obtaining write lock permission from the object's synchronization server by:
identifying the synchronization server for the object; acquiring a communication handle for the synchronization server; sending a write lock request to the synchronization server; receiving permission to write lock the object from the object's synchronization server; and conducting write operations on the object.
- 24. A method according to claim 19, wherein redirecting the ongoing session to an alternate process instance includes:
locating an alternate process instance to assume the browser session; transferring the session information to the alternate process instance; resuming the browser session between the browser and the alternate process instance; and monitoring the browser session.
- 25. A method according to claim 19, further comprising:
determining whether a process instance has terminated operation, and if the process instance has terminated operation, recovering the operation of a process instance that has prematurely terminated operation.
- 26. A method according to claim 19, further comprising:
if the workload of the process instance cannot accommodate the request for the browser session, rejecting the request for the browser session; and if the workload of the process instance can accommodate the request for the browser session, establishing a monitoring thread that allows a webserver to monitor the browser session between the browser and the process instance.
- 27. A method according to claim 19, further comprising transferring browser session information to another process instance in the event of a premature termination of process instance operation, and assuming and resuming the browser session in a manner that is transparent to a user operating a browser device.
- 28. A method according to claim 19, further comprising receiving a monitoring thread from an application server so that the webserver can monitor the activities of a process instance during a session between the process instance and a browser.
- 29. A method according to claim 19, wherein redirecting a session further comprises:
assuming a session by an alternate process instance; engaging the alternate process instance with a monitoring mechanism; and monitoring the session between the alternate process instance and the browser.
- 30. In a system including a server being configured to run instances of computer processes for performing communication operations, such as transactions with a database for example, and a browser having a network interface for communicating with entities via a network, which may include an application server, a method of maintaining objects for access among a cluster of process instances, comprising:
determining an object to be accessed; searching a local object storage for the object; and determining whether the process instance is the synchronous server for the object by determining whether the process instance has write lock privilege to write lock the object.
- 31. A method according to claim 30, further comprising:
if the process instance has write lock privilege, conducting write operations on the object.
- 32. A method according to claim 30, further comprising, if the process instance does not have write lock privilege, and if the process instance is the synchronization server, storing the object as write locked in the local lock table, and conducting write operations on the object.
- 33. A method according to claim 30, further comprising, if the process instance does not have write lock privilege, and if the process instance is not the synchronization server, obtaining write lock permission from the object's synchronization server by:
identifying the synchronization server for the object; acquiring a communication handle for the synchronization server; sending a write lock request to the synchronization server; receiving permission to write lock the object from the object's synchronization server; and conducting write operations on the object.
- 34. In a system including a server being configured to run instances of computer processes for performing communication operations, such as transactions with a database, and a browser having a network interface for communicating with entities via a network, a method of facilitating the operation of a process instances configured to respond to browser requests, comprising:
monitoring a cluster of process instances by retrieving an administrative directory from a central location; analyzing the administrative directory to determine whether any other process instances have terminated operation; and if a process instance has terminated operation, initiating a recovery process to recover the operations of the process instance that has terminated operation.
- 35. A method according to claim 34, wherein the recovery process includes isolating the process instance that has terminated operation.
- 36. A method according to claim 34, wherein isolating the process instance includes reassigning identification information for other process instances in the cluster to avoid browser requests being routed to the process instance that has terminated operation.
- 37. A method according to claim 34, wherein the recovery process includes establishing an alternate process instance to take over any ongoing session occurring when the process instance terminated operation.
- 38. A method according to claim 34, wherein the recovery process includes
isolating the process instance that has terminated operation by:
clearing the local lock table of the process instance; issuing a write lock reassurance requests for any objects that are write locked; and freezing the object cache of the process instance that has terminated operation.
- 39. A method according to claim 34, wherein the recovery process further includes invoking a start-up procedure for the process instance that has terminated operation.
- 40. A method according to claim 34, further comprising:
if a process instance experiences a normal shutdown,
blocking any new logins for browser requests; determining whether alternate processes are operating; if no alternate process instances are operating, waiting until an alternate process instance arises; if an alternate process instance is operating, rerouting ongoing sessions to an alternate process instance; and shutting down the process instance.
- 41. A method according to claim 34, further comprising:
if a process instance experiences an abort shutdown,
blocking any new browser session requests; determining whether alternate processes are operating; if no alternate process instances are operating, terminating any ongoing sessions; if an alternate process instance is operating, rerouting ongoing sessions to an alternate process instance; and shutting down the process instance.
- 42. A method according to claim 34, further comprising:
if a process instance experiences an immediate shutdown,
blocking any new browser session requests; completing any ongoing sessions; determining whether alternate processes are operating; if no alternate process instances are operating, terminating any ongoing sessions; if an alternate process instance is operating, rerouting ongoing sessions to an alternate process instance; and shutting down the process instance.
RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Patent Application No. 60/363,400, filed on Mar. 8, 2002.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60363400 |
Mar 2002 |
US |