摘要:
Enabling creation of control flow patterns in a workflow via continuations. Each continuation represents an activity execution context for an activity executing in the workflow by a workflow engine virtualizing a managed execution environment. Responsive to a request, the activity execution context is recreated via the continuation and the activity is executed within the recreated context.
摘要:
Asynchronous fault handling for a workflow. A state automaton for an activity in the workflow is defined. The state automaton includes at least an executing state, a faulting state, and a closed state and classifies an execution lifetime of the activity. The activity is defined to include work items and includes an execution hierarchy for the work items. Each work item includes an operation for executing a portion of the activity. Each work item is transitioned to the executing state. The included operation of transitioned work items is executed in the executing state. One or more of the transitioned work items are identified in response to the faulting event as a function of the execution hierarchy and the included operation. The faulting event is asynchronously handled by transitioning the one or more identified work items to the faulting state while executing the included operation of the remaining transitioned work items.
摘要:
Declaratively canceling execution of an activity. A state automaton for an activity is defined, and the state automaton includes an executing state, a canceling state, and a closed state and classifies an execution lifetime of the activity. The activity includes work items and organizes the work items in an execution hierarchical structure. The work items are transitioned from the executing state to the closed state indicating a completion of executing the each work item of the activity. Upon having one of the work items being transitioned to the closed state, a cancellation request is transmitted to the work items currently in the executing state. The executing work items are identified as a function of the transmitted cancellation request and the execution hierarchical structure of the defined activity. The execution lifetime of the activity is canceled by transitioning the identified work items from the executing state to the canceling state.
摘要:
Asynchronous fault handling for a workflow. A state automaton for an activity in the workflow is defined. The state automaton includes at least an executing state, a faulting state, and a closed state and classifies an execution lifetime of the activity. The activity is defined to include work items and includes an execution hierarchy for the work items. Each work item includes an operation for executing a portion of the activity. Each work item is transitioned to the executing state. The included operation of transitioned work items is executed in the executing state. One or more of the transitioned work items are identified in response to the faulting event as a function of the execution hierarchy and the included operation. The faulting event is asynchronously handled by transitioning the one or more identified work items to the faulting state while executing the included operation of the remaining transitioned work items.
摘要:
Enabling creation of control flow patterns in a workflow via continuations. Each continuation represents an activity execution context for an activity executing in the workflow by a workflow engine virtualizing a managed execution environment. Responsive to a request, the activity execution context is recreated via the continuation and the activity is executed within the recreated context.
摘要:
A back-end locator service can be utilized to identify a specific computing device, from among multiple computing devices in a domain, that is the most appropriate computing device to handle a particular type of request for data or other resources. The data or resources hosted by the domain can be divided among multiple computing devices. The domain can expose a network-based application program interface where successive requests by a client computing device become more specific as to the data or resources requested. Responses from the computing devices in the domain can, at some point in time, be informed by the back-end locator service and can comprise location-specific resource identifiers. The client computing device can utilize such location specific resource identifiers to direct further communications to the appropriate, specific computing device without having to incur redirection inefficiencies.
摘要:
A back-end locator service can be utilized to identify a specific computing device, from among multiple computing devices in a domain, that is the most appropriate computing device to handle a particular type of request for data or other resources. The data or resources hosted by the domain can be divided among multiple computing devices. The domain can expose a network-based application program interface where successive requests by a client computing device become more specific as to the data or resources requested. Responses from the computing devices in the domain can, at some point in time, be informed by the back-end locator service and can comprise location-specific resource identifiers. The client computing device can utilize such location specific resource identifiers to direct further communications to the appropriate, specific computing device without having to incur redirection inefficiencies.
摘要:
Dispatching an incoming message from a queue into message transfer session(s) from which message consumers may draw messages. The message is reversibly received from the queue, whereupon a context of a message is identified. If the context correlates to an existing message transfer session, the message is ultimately assigned to a message transfer session. If the context does not correlate to an existing message transfer session, a new message transfer session is created, and the message is assigned to that new message transfer session. Upon receiving an acknowledgement of successful processing of the message, the removal of the message from the queue-like communication medium is assured. Upon receiving an acknowledgement of unsuccessful processing of the message, the message is restored to the queue-like communication medium.
摘要:
Dispatching an incoming message from a queue into message transfer session(s) from which message consumers may draw messages. The message is reversibly received from the queue, whereupon a context of a message is identified. If the context correlates to an existing message transfer session, the message is ultimately assigned to a message transfer session. If the context does not correlate to an existing message transfer session, a new message transfer session is created, and the message is assigned to that new message transfer session. Upon receiving an acknowledgement of successful processing of the message, the removal of the message from the queue-like communication medium is assured. Upon receiving an acknowledgement of unsuccessful processing of the message, the message is restored to the queue-like communication medium.
摘要:
The present invention extends to methods, systems, and computer program products for coordinating application state and communication medium state. Embodiments of the invention provide mechanisms by which a dispatcher can enable application code to coordinate changes in application state with the consumption of messages from a communication medium. The coordination can be automatic where the dispatcher performs the coordination, or manual, where the coordination is performed more expressly by application code. Embodiments also include mechanisms by which applications targeting an execution (e.g., continuation based) runtime may compose alternative state transitions in the application with a peek lock protocol.