TASK DECOMPOSITION WITH THROTTLED MESSAGE PROCESSING IN A HETEROGENEOUS ENVIRONMENT
First Claim
Patent Images
1. A method comprising:
- receiving a request to process a business process task;
decomposing the business process task into at least one discrete subtask, wherein the subtask is associated with one out of a plurality of subtask types and the subtask is represented by a message;
based at least on the subtask type, routing the message to a subtask node dedicated to processing subtasks of the subtask type associated with the subtask; and
wherein the subtask node is one of a plurality of subtask nodes dedicated to processing subtasks of respective subtask types, and the subtask node is separately throttlable to control resources applied by the subtask node for processing subtasks of the subtask type; and
wherein the plurality of subtask nodes comprise a heterogeneous mixture of platform types.
2 Assignments
0 Petitions
Accused Products
Abstract
Tasks for a business process can be decomposed into subtasks represented by messages. Message processing can be throttled in a heterogeneous environment. For example, message processing at subtask nodes can be individually throttled at the node level by controlling the number of instances of subtask processors for the subtask node. An infrastructure built with framework components can be used for a variety of business process tasks, separating business logic from the framework logic. Thus, intelligent scalability across platform types can be provided for large scale business processes with reduced development time and resources.
72 Citations
20 Claims
-
1. A method comprising:
-
receiving a request to process a business process task; decomposing the business process task into at least one discrete subtask, wherein the subtask is associated with one out of a plurality of subtask types and the subtask is represented by a message; based at least on the subtask type, routing the message to a subtask node dedicated to processing subtasks of the subtask type associated with the subtask; and wherein the subtask node is one of a plurality of subtask nodes dedicated to processing subtasks of respective subtask types, and the subtask node is separately throttlable to control resources applied by the subtask node for processing subtasks of the subtask type; and wherein the plurality of subtask nodes comprise a heterogeneous mixture of platform types. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. One or more computer-readable media having encoded thereon computer-executable instructions for implementing a software system comprising:
-
a plurality of business process-specific components comprising functionality for processing subtasks of a plurality of subtask types related to a business process, wherein at least one of the business process-specific components is executable in an execution environment type different from at least one other of the business process-specific components; and a plurality of framework components generic to the business process, wherein the framework components comprise a message router and a subtask processor manager configured to independently throttle processing of subtasks of a particular subtask type. - View Dependent Claims (16, 17)
-
-
18. An apparatus comprising:
-
means for processing subtasks of a first subtask type related to a business process in a first execution environment type; and means for processing subtasks of a second subtask type, different from the first subtask type, related to a business process in a second execution environment type different from the first execution environment type; and a plurality of framework components generic to the business process, wherein the framework components comprise means for routing messages and means for independently throttling processing of subtasks of a particular subtask type.
-
-
19. One or more tangible computer-readable media comprising computer-executable instructions causing a computer to perform a method for load balancing business process task processing, the method comprising:
-
receiving a request to process a business process task; decomposing the business process task into one or more messages representing one or more subtasks of the business process task; with a business process manager framework component in concert with a business process handler, orchestrating processing of the subtask, wherein processing comprises generating a directed message for the subtask, wherein the directed message comprises a type indicative of a subtask node to which the directed message is to be directed; with a message router, routing the directed message to the subtask node to which the directed message is to be directed; at the subtask node, receiving the directed message at a subtask queue; and retrieving the directed message from the subtask queue for processing by an instance of a subtask processor of the subtask node, wherein retrieving is limited by a limit set on a number of instances of the subtask processor to be created within the subtask node by a per-subtask node configurable setting; wherein the business process task is performed with a plurality of subtask nodes having heterogeneous platform types.
-
-
20. One or more tangible computer-readable media comprising a subtask node configuration table comprising a plurality of entries respectively comprising:
-
a subtask type indicative of a type of subtask of a business process task; a name of a subtask node, wherein the name is indicative of a queue to which subtasks of the subtask type are to be directed; and an instantiation limit indicative of a maximum number of instances of subtask processors to be instantiated in the subtask node for processing subtasks of the subtask type; wherein the table comprises at least one subtask node name indicative of a queue managed in one execution environment type and at least one subtask node name indicative of a queue managed in an other execution environment type.
-
Specification