Synchronization of runtime and application state via batching of workflow transactions
First Claim
1. A method for managing state in a workflow, said method comprising:
- defining one or more work items to be executed;
defining an execution sequence fro the one or more defined work items;
assigning said one or more defined work items to one or more service provider components for execution without requiring the one or more service provider components to immediately execute the assigned work items upon the work items being assigned to the one or more service provider components;
batching said one or more assigned work items to said one or more service components in a batch for delayed execution by the one or more service provider components at as later time, said batch including an execution state of each of the one or more assigned work items yet to be executed by the one or more service provider components;
persisting the execution state of said one or more batched work items, said persisting further comprising;
monitoring the execution state of batched work items in the batch as the work items are executed according to the defined execution sequence, andsaving the state of said one or more batched work items in a computer storage medium, wherein the state of said one or more assigned work items includes at least one of the following;
completed, executing, and abandoned; and
committing the one or more service provider components to execute the one or more batched work items according to the defined execution sequence, wherein said one or more service provider components execute the one or more committed work items.
2 Assignments
0 Petitions
Accused Products
Abstract
Workflow management for maintaining consistency of persisted state across communicating components via batching of uncommitted work. A workflow component defines a workflow containing work items to be performed by service provider components. The workflow component assigns the work items to the service provider components, and the service provider components acknowledge the assigned work items. The workflow component appends the assigned work items to a work batch. The workflow component creates a transaction containing the batched work items. The workflow component commits to the workflow by requesting the service provider components to perform the work items. The workflow component checks the state of the execution of the work items and stores the state in a persistent storage.
120 Citations
16 Claims
-
1. A method for managing state in a workflow, said method comprising:
-
defining one or more work items to be executed; defining an execution sequence fro the one or more defined work items; assigning said one or more defined work items to one or more service provider components for execution without requiring the one or more service provider components to immediately execute the assigned work items upon the work items being assigned to the one or more service provider components; batching said one or more assigned work items to said one or more service components in a batch for delayed execution by the one or more service provider components at as later time, said batch including an execution state of each of the one or more assigned work items yet to be executed by the one or more service provider components; persisting the execution state of said one or more batched work items, said persisting further comprising; monitoring the execution state of batched work items in the batch as the work items are executed according to the defined execution sequence, and saving the state of said one or more batched work items in a computer storage medium, wherein the state of said one or more assigned work items includes at least one of the following;
completed, executing, and abandoned; andcommitting the one or more service provider components to execute the one or more batched work items according to the defined execution sequence, wherein said one or more service provider components execute the one or more committed work items. - View Dependent Claims (2, 3, 4, 5)
-
-
6. One or more computer storage media having computer-executable components stored thereon for managing state in a workflow, said components comprising:
-
a workflow component for assigning one or more work items to be executed without requiring one or more service provider components to immediately execute the assigned work items upon the work items being assigned to the one or more service provider components, wherein said workflow component defines the one or more work items and defines an execution sequence for the one or more defined work items, wherein said workflow component batches one or more of the assigned work items in a batch for delayed execution by the one or more service provider components at a later time; a memory for storing a persistent state of the one or more batched work items, wherein said persistent state of the one or more batched work items includes at least one of the following;
completed, executing, and abandoned; andthe one or more service provider components for committing to execute the one or more batched work items according to the defined execution sequence. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A method for managing workflow of one or more work items executable by a first host environment, said method comprising:
-
receiving, at the first host environment, an assignment to execute one or more work items, wherein the assignment does not require the first host environment to execute the assigned work items when the assignment is received, said assignment further defining an execution sequence for the one or more work items; appending the one or more assigned work items to a batch, wherein appending indicates said one or more assigned work items in the batch to delay execution by the first host environment until a later time; receiving, at the first host environment, a request to execute the one or more assigned work items; saving state of the one or more batched work items in a computer storage medium, wherein the state of the of the one or more batched work items includes at least one of the following;
completed, executing, and abandoned; andexecuting, at the first host environment, the one or more requested work items, wherein the execution sate of the one or more executed work items is referenced from the batch according to the defined execution sequence. - View Dependent Claims (13, 14, 15, 16)
-
Specification