How works

From XtremWebCH Wiki

Jump to: navigation, search

Contents

How does XWCH work?

XWCH consists of three main components: the coordinator, the worker, and the warehouse. Currently, there are no dedicated client packages -- instead, jobs or applications are submitted using either the XWCH API or a submission web pages.

The coordinator

The coordinator accepts execution requests coming from clients, assigns the tasks to the workers according to a scheduling policy and the availability of data, transfers binary codes to workers (if necessary), supervises task execution on workers, detects worker crash/disconnection and re-launches tasks on any other available worker.

The worker

The worker extracts the assigned task, starts computation and waits for the task to complete. The workers use a "pull" method only: they initiate connections to the coordinator in order to get jobs/input data, or to notify the coordinator about the status of the job. Workers can, therefore, be run in a NAT environment.

The warehouse

Warehouses are used by workers to download input data needed to execute their allocated task and/or upload output data produced by the task. A warehouse node acts as a repository or file server. The following figure demonstrates the components:

XWCH Architecture
XWCH Architecture
Personal tools