views:

416

answers:

2

I am looking for a solution, or a set of solutions with the following components:

  1. Job Scheduler - run a specific job on a specific schedule. I have seen Quartz.NET and it seems like a good framework, however I have not found it to have integrations with the components that follow.

  2. Job Runner - run a job, loaded as an AppDomain, from a directory, or from a binary stored in a database. This is of course in addition to running jobs passed in as direct references. Also, this component would be integrated with the job scheduler. Moreover, it should be possible to control this component via WCF, or the like. I would like the ability to view currently running jobs, schedule a new job by pointing to a file path, or database row, or stop a job.

  3. GUI - communicate with the Job Runner and provide a GUI shell which would expose all of the functions of the job runner. Something like the SQL Server Agent shell.

One of the things I would like to achieve with this is the ability to deploy and run a C# job with the same ease as it would be to run a SQL script through SQL Server Management Studio.

A: 

Here's an interesting one:

http://research.microsoft.com/en-us/projects/Dryad/

Chris Lively
A: 

I've been playing with DryadLINQ. If you are looking for a distributed job execution engine its definitely worth a look. It does make you write as much code as possible in LINQ though, because it parses the linq execute tree and figures out how to distribute the linq execution across all nodes in the cluster.

Turbo