Claims Analysis
Total Claims: 42
Claim 1
Independent Claim
144 words
A server software architecture embodied on a computer-readable medium for implementation on a computer server system, the server software architecture comprising: a server program to receive a client request from a client and return a response to the client; an out-of-process application executing in a separate process from the server program, the out-of-process application being invoked to process the client request received by the server program and to generate the response to be returned to the client; and a subsystem to detect when the out-of-process application fails and to recover the out-of-process application without disrupting operation of the server program wherein the subsystem records the client request in a list before the client request is transferred from the server program to the out-of-process application, and wherein the subsystem removes the client request from the list when the response is returned from the out-of-process application.
Claim 2
Dependent Claim
144 words
A server software architecture embodied on a computer-readable medium for implementation on a computer server system, the server software architecture comprising: a server program to receive a client request from a client and return a response to the client; an out-of-process application executing in a separate process from the server program, the out-of-process application being invoked to process the client request received by the server program and to generate the response to be returned to the client; and a subsystem to detect when the out-of-process application fails and to recover the out-of-process application without disrupting operation of the server program wherein the subsystem records the client request in a list before the client request is transferred from the server program to the out-of-process application, and wherein the subsystem removes the client request from the list when the response is returned from the out-of-process application.
Claim 3
Dependent Claim
153 words
A server software architecture embodied on a computer-readable medium for implementation on a computer server system, the server software architecture comprising: a server program to receive a client request from a client and return a response to the client; an out-of-process application executing in a separate process from the server program, the out-of-process application being invoked to process the client request received by the server program and to generate the response to be returned to the client; and a subsystem to detect when the out-of-process application fails and to recover the out-of-process application without disrupting operation of the server program, wherein the subsystem records the client request in a list before the client request is transferred from the server program to the out-of-process application, and wherein the subsystem cleans up the client request on the list in an event that the out-of-process application fails before the client request is removed from the list.
Claim 4
Dependent Claim
153 words
A server software architecture embodied on a computer-readable medium for implementation on a computer server system, the server software architecture comprising: a server program to receive a client request from a client and return a response to the client; an out-of-process application executing in a separate process from the server program, the out-of-process application being invoked to process the client request received by the server program and to generate the response to be returned to the client; and a subsystem to detect when the out-of-process application fails and to recover the out-of-process application without disrupting operation of the server program, wherein the subsystem records the client request in a list before the client request is transferred from the server program to the out-of-process application, and wherein the subsystem cleans up the client request on the list in an event that the out-of-process application fails before the client request is removed from the list.
Claim 5
Dependent Claim
128 words
A server software architecture embodied on a computer-readable medium for implementation on a computer server system, the server software architecture comprising: a server program to receive a client request from a client and return a response to the client; an out-of-process application executing in a separate process from the server program, the out-of-process application being invoked to process the client request received by the server program and to generate the response to be returned to the client; and a subsystem to detect when the out-of-process application fails and to recover the out-of-process application without disrupting operation of the server program, wherein the subsystem counts the number of times it recovers the out-of-process application, and ceases to recover the out-of-process application when the number reaches a preset recover limit.
Claim 6
Dependent Claim
128 words
A server software architecture embodied on a computer-readable medium for implementation on a computer server system, the server software architecture comprising: a server program to receive a client request from a client and return a response to the client; an out-of-process application executing in a separate process from the server program, the out-of-process application being invoked to process the client request received by the server program and to generate the response to be returned to the client; and a subsystem to detect when the out-of-process application fails and to recover the out-of-process application without disrupting operation of the server program, wherein the subsystem counts the number of times it recovers the out-of-process application, and ceases to recover the out-of-process application when the number reaches a preset recover limit.
Claim 7
Dependent Claim
130 words
In a server system having a server program that executes in a first process to receive client requests and at least one out-of-process application that is executes in a second process separate from the server program to process the client requests, a subsystem for detecting failure of the out-of-process application and recovering from the failure, comprising: a gate component to list the client requests that are passed from the server program to the out-of-process application; a detection component to examine responses returned from the out-of-process application to detect whether the out-of-process application has failed; and a recovery component to cleanup, in an event the out-of-process application has failed, those client requests that remain listed by the gate component, but have not yet been responded to by the failed out-of-process application.
Claim 8
Dependent Claim
130 words
In a server system having a server program that executes in a first process to receive client requests and at least one out-of-process application that is executes in a second process separate from the server program to process the client requests, a subsystem for detecting failure of the out-of-process application and recovering from the failure, comprising: a gate component to list the client requests that are passed from the server program to the out-of-process application; a detection component to examine responses returned from the out-of-process application to detect whether the out-of-process application has failed; and a recovery component to cleanup, in an event the out-of-process application has failed, those client requests that remain listed by the gate component, but have not yet been responded to by the failed out-of-process application.
Claim 9
Dependent Claim
16 words
A subsystem as recited in claim 4 , wherein the recovery component restarts the out-of-process application.
Claim 10
Dependent Claim
26 words
A subsystem as recited in claim 4 , further comprising a list object to hold references to the client requests being passed to the out-of-process application.
Claim 11
Dependent Claim
20 words
A subsystem as recited in claim 6 , further comprising a recovery list having an entry identifying the list object.
Claim 12
Dependent Claim
48 words
A subsystem as recited in claim 7 , wherein the recovery component restarts the out-of-process application, creates a second list object to hold references to the client requests being passed to the restarted out-of-process application, and adds an entry to the recovery list for the second list object.
Claim 13
Dependent Claim
36 words
A subsystem as recited in claim 4 , wherein the gate component, the detection component, and the recovery component are implemented in a software object that runs in the first process along with the server program.
Claim 14
Dependent Claim
26 words
A subsystem as recited in claim 4 , wherein the gate component, the detection component, and the recovery component are incorporated into a server operating system.
Claim 15
Dependent Claim
241 words
A server software architecture embodied on a computer-readable medium for implementation on a computer server system, the server software architecture comprising: a server program to receive a client request from a client and return a response to the client; an application manager director to handle the client request in an event that a response to the client request will involve at least some content generation; at least one application manager independent from, but dynamically accessible by, the application manager director; at least one agent independent from, but dynamically accessible by, the application manager, the agent comprising capabilities to process the client request to generate the response; the application manager and the agent, when invoked, being run in a separate process from the server program; an information object maintained at the application manager director to direct requests to an out-of-process application manager, the information object recording on a list the client requests that are passed to the out-of-process application manager and removing from the list the client requests that are returned from the out-of-process application manager; and in an event that the out-of-process application manager fails, the information object blocking future client requests destined for the out-of-process application manager and cleaning up the client requests that remain on the list as being unanswered by the failed out-of-process application manager, the information object then restarting the out-of-process application manager and permitting the future client requests to flow to the restarted out-of-process application manager.
Claim 16
Dependent Claim
241 words
A server software architecture embodied on a computer-readable medium for implementation on a computer server system, the server software architecture comprising: a server program to receive a client request from a client and return a response to the client; an application manager director to handle the client request in an event that a response to the client request will involve at least some content generation; at least one application manager independent from, but dynamically accessible by, the application manager director; at least one agent independent from, but dynamically accessible by, the application manager, the agent comprising capabilities to process the client request to generate the response; the application manager and the agent, when invoked, being run in a separate process from the server program; an information object maintained at the application manager director to direct requests to an out-of-process application manager, the information object recording on a list the client requests that are passed to the out-of-process application manager and removing from the list the client requests that are returned from the out-of-process application manager; and in an event that the out-of-process application manager fails, the information object blocking future client requests destined for the out-of-process application manager and cleaning up the client requests that remain on the list as being unanswered by the failed out-of-process application manager, the information object then restarting the out-of-process application manager and permitting the future client requests to flow to the restarted out-of-process application manager.
Claim 17
Dependent Claim
40 words
A server software architecture as recited in claim 11 , wherein the information object maintains a recovery list that identifies the list of client requests as a possible list requiring clean up in the event the out-of-process application manager fails.
Claim 18
Dependent Claim
32 words
A server software architecture as recited in claim 11 , further comprising a second application manager and a second agent that run, when invoked, in the same process as the server program.
Claim 19
Dependent Claim
26 words
A server software architecture as recited in claim 11 , wherein the application manager director maintains a table that lists the application managers that are running.
Claim 20
Dependent Claim
23 words
A server software architecture as recited in claim wherein said each application manager maintains a table that lists the agents that are running.
Claim 21
Dependent Claim
250 words
In a server system having a server program to receive a client request from a client and a dynamic content generation system to dynamically generate content to be served back to the client, the dynamic content generation system comprising an application manager director, one or more application managers that are dynamically accessible by the application manager director to handle the client request, and one or more agents grouped in association with the application managers and dynamically accessible by the associated application managers to process the client request, wherein the one or more application managers and their associated group of agents can be run in-process or out-of-process with the server program, a crash detection and recovery subsystem embodied as software modules on a computer-readable medium comprising: (A) a detection module comprising: code means for recording a client request on a list as the client request is passed to an out-of-process application manager; code means for examining the client request as it is returned from the out-of-process application manager to detect whether the out-of-process application manager has failed; (B) a recovery module that is invoked when the detection module determines that the out-of-process application manager has failed, the recover module comprising: code means for blocking future client requests destined for the out-of-process application manager; code means for cleaning up the client requests remaining on the list; code means for restarting the out-of-process application manager; and code means for permitting the future client requests to be passed to the restarted out-of-process application manager.
Claim 22
Dependent Claim
250 words
In a server system having a server program to receive a client request from a client and a dynamic content generation system to dynamically generate content to be served back to the client, the dynamic content generation system comprising an application manager director, one or more application managers that are dynamically accessible by the application manager director to handle the client request, and one or more agents grouped in association with the application managers and dynamically accessible by the associated application managers to process the client request, wherein the one or more application managers and their associated group of agents can be run in-process or out-of-process with the server program, a crash detection and recovery subsystem embodied as software modules on a computer-readable medium comprising: (A) a detection module comprising: code means for recording a client request on a list as the client request is passed to an out-of-process application manager; code means for examining the client request as it is returned from the out-of-process application manager to detect whether the out-of-process application manager has failed; (B) a recovery module that is invoked when the detection module determines that the out-of-process application manager has failed, the recover module comprising: code means for blocking future client requests destined for the out-of-process application manager; code means for cleaning up the client requests remaining on the list; code means for restarting the out-of-process application manager; and code means for permitting the future client requests to be passed to the restarted out-of-process application manager.
Claim 23
Dependent Claim
33 words
A crash detection and recovery subsystem as recited in claims 16 , wherein the detection module and the recovery module are implemented in a single software object resident at the application manager director.
Claim 24
Dependent Claim
30 words
A crash detection and recovery subsystem as recited in claim 16 , wherein recovery module further comprises code means for counting a number of times the out-of-process application is restarted.
Claim 25
Dependent Claim
37 words
A crash detection and recovery subsystem as recited in claim 18 , wherein recovery module further comprises code means for ceasing to restart the out-of-process application after the number of restart times reaches a preset recover limit.
Claim 26
Dependent Claim
17 words
A server operating system comprising the crash detection and recovery subsystem as recited in claim 16 .
Claim 27
Dependent Claim
190 words
A server computer system comprising: a processing unit; a memory subsystem; a server program stored in the memory subsystem and executed on the processing unit to receive client requests; and multiple applications stored in the memory subsystem and executed on the processing unit either in-process or out-of-process with the server program to dynamically generate responses to the client requests, each said application comprising one or more agents to process the client requests and an application manager to manage the one or more agents; an application manager director to facilitate delivery of the client requests received by the server program to the applications that are appropriate for processing the client requests; and a crash detection and recovery subsystem to detect when an out-of-process application fails and to recover the out-of-process application without disrupting operation of the server program, wherein the crash detection and recovery subsystem records the client requests being delivered to the out-of-process application in a list, and wherein the crash detection and recovery subsystem cleans up the client request on the list in an event that the out-of-process application fails before the client request is removed from the list.
Claim 28
Dependent Claim
190 words
A server computer system comprising: a processing unit; a memory subsystem; a server program stored in the memory subsystem and executed on the processing unit to receive client requests; and multiple applications stored in the memory subsystem and executed on the processing unit either in-process or out-of-process with the server program to dynamically generate responses to the client requests, each said application comprising one or more agents to process the client requests and an application manager to manage the one or more agents; an application manager director to facilitate delivery of the client requests received by the server program to the applications that are appropriate for processing the client requests; and a crash detection and recovery subsystem to detect when an out-of-process application fails and to recover the out-of-process application without disrupting operation of the server program, wherein the crash detection and recovery subsystem records the client requests being delivered to the out-of-process application in a list, and wherein the crash detection and recovery subsystem cleans up the client request on the list in an event that the out-of-process application fails before the client request is removed from the list.
Claim 29
Dependent Claim
190 words
A server computer system comprising: a processing unit; a memory subsystem; a server program stored in the memory subsystem and executed on the processing unit to receive client requests; and multiple applications stored in the memory subsystem and executed on the processing unit either in-process or out-of-process with the server program to dynamically generate responses to the client requests, each said application comprising one or more agents to process the client requests and an application manager to manage the one or more agents; an application manager director to facilitate delivery of the client requests received by the server program to the applications that are appropriate for processing the client requests; and a crash detection and recovery subsystem to detect when an out-of-process application fails and to recover the out-of-process application without disrupting operation of the server programs wherein the crash detection and recovery subsystem records the client requests being delivered to the out-of-process application in a list, and wherein the crash detection and recovery subsystem counts the number of times it recovers the out-of-process application, and ceases to recover the out-of-process application when the number reaches a preset recover limit.
Claim 30
Dependent Claim
190 words
A server computer system comprising: a processing unit; a memory subsystem; a server program stored in the memory subsystem and executed on the processing unit to receive client requests; and multiple applications stored in the memory subsystem and executed on the processing unit either in-process or out-of-process with the server program to dynamically generate responses to the client requests, each said application comprising one or more agents to process the client requests and an application manager to manage the one or more agents; an application manager director to facilitate delivery of the client requests received by the server program to the applications that are appropriate for processing the client requests; and a crash detection and recovery subsystem to detect when an out-of-process application fails and to recover the out-of-process application without disrupting operation of the server programs wherein the crash detection and recovery subsystem records the client requests being delivered to the out-of-process application in a list, and wherein the crash detection and recovery subsystem counts the number of times it recovers the out-of-process application, and ceases to recover the out-of-process application when the number reaches a preset recover limit.
Claim 31
Dependent Claim
184 words
A server computer system comprising: a processing unit; a memory subsystem; a server program stored in the memory subsystem and executed on the processing unit to receive client requests; and multiple applications stored in the memory subsystem and executed on the processing unit either in-process or out-of-process with the server program to dynamically generate responses to the client requests, each said application comprising one or more agents to process the client requests and an application manager to manage the one or more agents; an application manager director to facilitate delivery of the client requests received by the server program to the applications that are appropriate for processing the client requests; a crash detection and recovery subsystem to detect when an out-of-process application fails and to recover the out-of-process application without disrupting operation of the server program; wherein the application manager director creates request objects to hold data contained in corresponding ones of the client requests; and wherein the application managers create shadow objects for corresponding request objects, the shadow objects holding at least a subset of the data contained in the corresponding request objects.
Claim 32
Dependent Claim
184 words
A server computer system comprising: a processing unit; a memory subsystem; a server program stored in the memory subsystem and executed on the processing unit to receive client requests; and multiple applications stored in the memory subsystem and executed on the processing unit either in-process or out-of-process with the server program to dynamically generate responses to the client requests, each said application comprising one or more agents to process the client requests and an application manager to manage the one or more agents; an application manager director to facilitate delivery of the client requests received by the server program to the applications that are appropriate for processing the client requests; a crash detection and recovery subsystem to detect when an out-of-process application fails and to recover the out-of-process application without disrupting operation of the server program; wherein the application manager director creates request objects to hold data contained in corresponding ones of the client requests; and wherein the application managers create shadow objects for corresponding request objects, the shadow objects holding at least a subset of the data contained in the corresponding request objects.
Claim 33
Dependent Claim
107 words
In a server system having a server program that executes in a first process to receive client requests and at least one out-of-process application that executes in a second process separate from the server program to process the client requests, a method for recovering the out-of-process application after it fails, comprising the following steps: blocking new client requests destined for the failed out-of-process application; cleaning up old client requests that remain unanswered due to failure of the out-of-process application; restarting the out-of-process application in a third process separate from the first and second processes; and permitting the new client requests to flow to the restarted out-of-process application.
Claim 34
Dependent Claim
107 words
In a server system having a server program that executes in a first process to receive client requests and at least one out-of-process application that executes in a second process separate from the server program to process the client requests, a method for recovering the out-of-process application after it fails, comprising the following steps: blocking new client requests destined for the failed out-of-process application; cleaning up old client requests that remain unanswered due to failure of the out-of-process application; restarting the out-of-process application in a third process separate from the first and second processes; and permitting the new client requests to flow to the restarted out-of-process application.
Claim 35
Dependent Claim
23 words
A method as recited in claim 24 , further comprising the step of counting a number of times the out-of-process application is restarted.
Claim 36
Dependent Claim
30 words
A method as recited in claim 25 , further comprising the step of ceasing to restart the out-of-process application after the number of restart times reaches a preset recover limit.
Claim 37
Dependent Claim
16 words
A computer-readable medium having computer-executable instructions for performing the steps as recited in claim 24 .
Claim 38
Dependent Claim
188 words
In a server system having a hierarchic managerial architecture comprising an application manager director, one or more application managers that are dynamically accessible by the application manager director, and one or more agents grouped in association with the application managers and dynamically accessible by the associated application managers, wherein the one or more application managers and their associated group of agents can be run in-process or out-of-process with the server program, a method comprising the following steps: (A) detecting when an out-of-process application manager fails, comprising the following steps: recording a client request on a list as the client request is passed to an out-of-process application manager; examining the client request as it is returned from the out-of-process application manager to detect whether the out-of-process application manager has failed; (B) in an event that the out-of-process application manager has failed, recovering the failed out-of-process application manager comprising the following steps: blocking future client requests destined for the out-of-process application manager; cleaning up the client requests remaining on the list; restarting the out-of-process application manager; and permitting the future client requests to flow to the restarted out-of-process application manager.
Claim 39
Dependent Claim
188 words
In a server system having a hierarchic managerial architecture comprising an application manager director, one or more application managers that are dynamically accessible by the application manager director, and one or more agents grouped in association with the application managers and dynamically accessible by the associated application managers, wherein the one or more application managers and their associated group of agents can be run in-process or out-of-process with the server program, a method comprising the following steps: (A) detecting when an out-of-process application manager fails, comprising the following steps: recording a client request on a list as the client request is passed to an out-of-process application manager; examining the client request as it is returned from the out-of-process application manager to detect whether the out-of-process application manager has failed; (B) in an event that the out-of-process application manager has failed, recovering the failed out-of-process application manager comprising the following steps: blocking future client requests destined for the out-of-process application manager; cleaning up the client requests remaining on the list; restarting the out-of-process application manager; and permitting the future client requests to flow to the restarted out-of-process application manager.
Claim 40
Dependent Claim
23 words
A method as recited in claim 28 , further comprising the step of counting a number of times the out-of-process application is restarted.
Claim 41
Dependent Claim
30 words
A method as recited in claim 29 , further comprising the step of ceasing to restart the out-of-process application after the number of restart times reaches a preset recover limit.
Claim 42
Dependent Claim
16 words
A computer-readable medium having computer-executable instructions for performing the steps as recited in claim 28 .