System and Method for Fault Tolerant Processing of Information Via Networked Computers Including Request Handlers, Process Handlers, and Task Handlers
First Claim
Patent Images
1. A system for processing information, the system comprising:
- a plurality of networked computers for processing a processing job in a distributed manner, the plurality of networked computers comprising a request handler, a plurality of process handlers, and a plurality of task handlers, the processing job comprising a process flow, the process flow including (1) a plurality of processing tasks and (2) state information relating to the processing job;
the request handler configured to (1) receive a service request for the processing job, and (2) communicate data representative of the processing job to a process handler;
the process handler to which the processing job data was communicated being configured to (1) receive the communicated processing job data, and (2) analyze the processing job data and state information to determine a sequence of processing tasks to be performed by the task handlers;
the task handlers configured to (1) perform the processing tasks of the processing job in accordance with the determined sequence, and (2) generate updated state information in response to the performed processing tasks; and
wherein the request handler is further configured to (1) maintain state information for the processing job based on the updated state information, (2) determine whether a fault exists, and (3) in response to a determination that a fault exists, initiate a recovery procedure based on the maintained state information for the processing job.
3 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for processing information via networked computers leverage request handlers, process handlers, and task handlers to provide efficient distributed and fault-tolerant processing of processing jobs.
33 Citations
28 Claims
-
1. A system for processing information, the system comprising:
-
a plurality of networked computers for processing a processing job in a distributed manner, the plurality of networked computers comprising a request handler, a plurality of process handlers, and a plurality of task handlers, the processing job comprising a process flow, the process flow including (1) a plurality of processing tasks and (2) state information relating to the processing job; the request handler configured to (1) receive a service request for the processing job, and (2) communicate data representative of the processing job to a process handler; the process handler to which the processing job data was communicated being configured to (1) receive the communicated processing job data, and (2) analyze the processing job data and state information to determine a sequence of processing tasks to be performed by the task handlers; the task handlers configured to (1) perform the processing tasks of the processing job in accordance with the determined sequence, and (2) generate updated state information in response to the performed processing tasks; and wherein the request handler is further configured to (1) maintain state information for the processing job based on the updated state information, (2) determine whether a fault exists, and (3) in response to a determination that a fault exists, initiate a recovery procedure based on the maintained state information for the processing job. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for processing information via a plurality of networked computers, the plurality of networked computers comprising a request handler, a plurality of process handlers, and a plurality of task handlers, the method comprising:
-
receiving a service request for the processing job, the processing job comprising a process flow, the process flow including (1) a plurality of processing tasks and (2) state information relating to the processing job; the request handler (1) receiving a service request for the processing job, and (2) communicating data representative of the processing job to a process handler; the process handler to which the processing job data was communicated (1) receiving the communicated processing job data, and (2) analyzing the processing job data and state information to determine a sequence of processing tasks to be performed by the task handlers; the task handlers (1) performing the processing tasks of the processing job in accordance with the determined sequence, and (2) generating updated state information in response to the performed processing tasks; and the request handler (1) maintaining state information for the processing job based on the updated state information, (2) determining whether a fault exists, and (3) in response to a determination that a fault exists, initiating a recovery procedure based on the maintained state information for the processing job. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A method for processing information via a plurality of networked computers, the plurality of networked computers comprising a request handler, a plurality of process handlers, and a plurality of task handlers, the method comprising:
-
the request handler receiving a service request for the processing job, the processing job comprising a process flow, the process flow including (1) a plurality of processing tasks and (2) state information relating to the processing job; a process handler coordinating an execution of the processing tasks by a plurality of the task handlers; the task handlers (1) executing the processing tasks, and (2) generating updated state information for the processing job in response to the executing step; as the processing tasks are executed by the task handlers, redundantly storing updated state information across a plurality of different processes; determining whether a failure has occurred; and in response to a determination that a failure has occurred, (1) retrieving a copy of the redundantly stored state information, and (2) resuming the processing job in accordance with the retrieved state information. - View Dependent Claims (22, 23, 24, 25, 26)
-
-
27. A system for processing information, the system comprising:
-
a plurality of networked computers for processing a processing job in a distributed manner, the plurality of networked computers comprising a request handler, a plurality of process handlers, and a plurality of task handlers, the processing job comprising a process flow, the process flow including (1) a plurality of processing tasks and (2) state information relating to the processing job; the request handler configured to (1) receive a service request for the processing job, and (2) communicate data representative of the processing job to a process handler; the process handler to which the processing job data was communicated being configured to (1) receive the communicated processing job data, and (2) analyze the processing job data and state information to determine a sequence of processing tasks to be performed by the task handlers; the task handlers configured to (1) perform the processing tasks of the processing job in accordance with the determined sequence, and (2) generate updated state information in response to the performed processing tasks; and wherein the process handler to which the processing job data was communicated is further configured to (1) maintain state information for the processing job based on the updated state information, (2) determine whether a fault exists, and (3) in response to a determination that a fault exists, initiate a recovery procedure based on the maintained state information for the processing job.
-
-
28. A method for processing information via a plurality of networked computers, the plurality of networked computers comprising a request handler, a plurality of process handlers, and a plurality of task handlers, the method comprising:
-
receiving a service request for the processing job, the processing job comprising a process flow, the process flow including (1) a plurality of processing tasks and (2) state information relating to the processing job; the request handler (1) receiving a service request for the processing job, and (2) communicating data representative of the processing job to a process handler; the process handler to which the processing job data was communicated (1) receiving the communicated processing job data, and (2) analyzing the processing job data and state information to determine a sequence of processing tasks to be performed by the task handlers; the task handlers (1) performing the processing tasks of the processing job in accordance with the determined sequence, and (2) generating updated state information in response to the performed processing tasks; and the process handler to which the processing job data was communicated (1) maintaining state information for the processing job based on the updated state information, (2) determining whether a fault exists, and (3) in response to a determination that a fault exists, initiating a recovery procedure based on the maintained state information for the processing job.
-
Specification