2009-09-02 6 views
5

ich nach einer Lösung suchen, oder eine Reihe von Lösungen mit den folgenden Komponenten:Was sind gute .net Job Scheduler und Runner-Lösungen?

  1. Job Scheduler - um eine bestimmte Aufgabe zu einem bestimmten Zeitplan ausgeführt. Ich habe Quartz.NET gesehen und es scheint ein gutes Framework zu sein, aber ich habe nicht gefunden, dass es Integrationen mit den folgenden Komponenten hat.

  2. Job Runner - Ausführen eines Jobs, der als AppDomain geladen wurde, aus einem Verzeichnis oder aus einer in einer Datenbank gespeicherten Binärdatei. Dies ist natürlich zusätzlich zum Ausführen von Jobs, die als direkte Referenzen übergeben werden. Außerdem würde diese Komponente in den Job-Scheduler integriert sein. Darüber hinaus sollte es möglich sein, diese Komponente über WCF oder dergleichen zu steuern. Ich möchte die aktuell laufenden Jobs anzeigen, einen neuen Job planen, indem Sie auf einen Dateipfad oder eine Datenbankzeile zeigen, oder einen Job stoppen.

  3. GUI - kommunizieren mit dem Job Runner und bieten eine GUI-Shell, die alle Funktionen des Job-Runner verfügbar machen würde. So etwas wie die Shell des SQL Server-Agents.

Eines der Dinge, würde ich damit erreichen möge, ist die Fähigkeit, einen C# Job mit der gleichen Leichtigkeit zu implementieren und laufen, wie es wäre, ein SQL-Skript mithilfe von SQL Server Management Studio ausgeführt.

+3

Warum planen Sie nicht einfach eine Aufgabe zum Ausführen der C# -App: http://support.microsoft.com/kb/308569 –

+0

Rexem: +1 für "Ich wünschte, meine Firma würde dies verwenden und CA7 töten". – tsilb

+0

das könnte eine Option sein, aber ich war auf der Suche nach etwas mit einer GUI, die Sie über ein Netzwerk, vielleicht eine Weboberfläche und einfachen programmatischen Zugriff über C# für die Jobausführung und Bereitstellung anzeigen können – eulerfx

Antwort

0

Ich habe mit DryadLINQ spielen. Wenn Sie nach einer verteilten Job-Ausführung-Engine suchen, ist es definitiv einen Blick wert. Es lässt Sie jedoch so viel Code wie möglich in LINQ schreiben, da es die linq execute-Struktur parst und herausfinden, wie die linq-Ausführung auf alle Knoten im Cluster verteilt wird.

0

Es gibt eine wikipedia page, die Job Scheduler auflistet (die meisten sind kommerzielle Lösungen). Wir verwenden eine .NET-Lösung namens JAMS - es gibt eine kostenlose dev-Version, da es für meine Firma keine Möglichkeit gibt, $ 10k + dafür zu bezahlen.

2

Ein bisschen spät stelle ich mir vor, könnte aber immer noch nützlich für andere sein.

Hier ist ein Projekt, mit dem ich ziemlich viel Zeit verbracht habe, das scheint die meisten der angegebenen Anforderungen zu erfüllen. Es ist auch das, was wir intern verwenden, also versuche ich, es auf dem neuesten Stand zu halten.

http://backgroundworker.codeplex.com/

Es ist ziemlich ähnlich wie Quarz, aber gezieltere zur Sicherung der Arbeitsplätze und deren Daten zu verwalten.

Verwandte Themen