.NET Cron Jobs
16.05.2024, 07:56 Uhr
NCronJob bringt spannende neue Funktionen
Die Bibliothek NCronJob hat ein bedeutendes Update erfahren. Die neue Version bietet verbesserte Benutzerfreundlichkeit durch ein flüssigeres API und integriert Funktionen wie Wiederholungsrichtlinien und Zeitzonenunterstützung.
Mit NCronJob verwalten Sie Cron Jobs unter .NET. Ihr reorganisiertes API soll jetzt flüssiger und intuitiver sein. Ein besonders hervorzuhebender Aspekt ist die Unterstützung von Concurrency in der aktuellen Version. Die Standardkonfiguration verhindert nun parallele Ausführungen der Jobs, was die Zuverlässigkeit erhöht — ein wesentlicher Fortschritt gegenüber früheren Versionen. Jobs, die parallel laufen sollen, können jedoch einfach mit dem Attribut SupportsConcurrency dekoriert werden.
Ebenso bedeutsam ist die Einführung einer Retry-Funktion, die es ermöglicht, Jobs bei Misserfolg erneut zu starten. Dies ist besonders nützlich bei Abhängigkeiten von externen Diensten. Entwickler können die Anzahl der Versuche und die Verzögerungen zwischen diesen definieren. Flexible Strategien wie ExponentialBackoff und FixedInterval ermöglichen eine fein abgestimmte Steuerung der Wiederholungen.
Ein weiteres Highlight ist die Zeitzonenunterstützung, die die Festlegung der Zeitzonen für Cron-Ausdrücke erlaubt. Dies ist insbesondere für Jobs relevant, die in verschiedenen Zeitzonen ausgeführt werden müssen.
Die Zukunftsvision von NCronJob beinhaltet das Einrichten von Abhängigkeiten, die das automatische Starten von Jobs nach vorherigem Erfolg oder Misserfolg ermöglichen, sowie die Implementierung von Dashboards und Überwachungsfunktionen. Obwohl die Entwicklung noch in den Kinderschuhen steckt, verspricht das gezeigte Dashboard-Alpha, realisiert mit Blazor, einen interessanten Ausblick auf das, was kommen mag.
Die Dokumentation, bisher nur in einer README.md, wurde ebenfalls überarbeitet und ist jetzt umfassend unter https://linkdotnet.github.io/NCronJob/ verfügbar. Die Entwicklergemeinschaft hat hier eine wertvolle Ressource für weitere Informationen und Beispiele.