Information Technology Reference
In-Depth Information
for the execution of an assigned task. TMs and WCO communicate through
an event service server (ESS).
5.3.1 Communication Approach
A communication approach is needed for task managers. On the one
hand, every task manager is an independent thread of execution and they
can be run in parallel. On the other hand, the behavior of each task man-
ager may depend on the processing status of other task managers accord-
ing to the task dependencies. For example, a task manager should not
execute the task on a remote node if the input generated by its parent tasks
is not available for any reason.
In addition, in a workl ow, a task may have more than one input that
comes from different tasks. Furthermore, the output of these tasks may
also be required by other task managers. Hence the communication model
between the task managers is not just one-to-one or one-to-many, but it
could be many-to-many depending on task dependencies of the work-
l ow. Given this motivation, an event-driven mechanism with a subscrip-
tion-notii cation model has been developed to control and manage
execution activities. In the system, the behaviors of task managers and
workl ow coordinator are driven by events. A task manager is not required
to handle communication with others and only generates events accord-
ing to a task's processing status. At the same time, task managers take
actions only depending on the events occurring without concern for details
of other task managers. The benei t of this event-driven mechanism is that
it provides loosely coupled control; hence the design and development of
the system is very l exible and additional components can be easily
plugged in.
The event notii cation is based on the subscription-notii cation model.
WCO and TMs just subscribe to events of interest after activation, and
then are informed immediately when a subscribed event occurs. There are
three basic types of events, status events , output events , and control events .
Status events are sent by the TMs to provide information on the status of
task execution. Output events are sent by TMs to announce that the task
output is ready along with the location of its storage. Control events are
used to send control messages, such as to pause and resume the execution,
to task managers.
As illustrated in Figure 5.3 , TMs inform each other and communicate
with the WCO through the ESS. For example, TMs put their task execution
status (e.g., executing, done, failure) into the ESS, which notii es the WCO.
If the output of a task is required by its child tasks, the task managers of the
child tasks can subscribe to output events of the task. Once the task gener-
ates the required output, an output event is sent to the ESS, which immedi-
ately notii es the child TMs that have subscripted to the output event. A
user can control and monitor the workl ow execution by subscribing to
status events and sending control events through a visual user interface.
 
Search WWH ::




Custom Search