Konzept Task Scheduling
Diese Seite ist ein Teil der IsyFact-Standards. Alle Inhalte der Seite, insbesondere Texte und Grafiken, sind urheberrechtlich geschützt. Alle urheberrechtlichen Nutzungs- und Verwertungsrechte liegen beim Bundesverwaltungsamt.
Die Nutzung ist unter den Lizenzbedingungen der Creative Commons Namensnennung 4.0 International gestattet.
1. Einführung und Ziele
Das Konzept Task Scheduling beschreibt die konzeptionellen Grundlagen der Steuerung, d.h. Planung und Ausführung, von Tasks in der IsyFact.
Tasks sind in diesem Kontext periodisch wiederkehrende Tätigkeiten, die innerhalb einer Anwendungskomponente angesiedelt sind und zur Erfüllung der fachlichen oder technischen Anforderungen der Anwendung beitragen. Sie grenzen sich wesentlich von Batches ab.
Task | Batch | |
---|---|---|
Funktion |
Aufruf von Anwendungsfunktionen, |
Aufruf von Anwendungskomponenten (Schnittstelle) |
Verortung |
Bestandteil einer Anwendungskomponente |
Bestandteil eines IT-Systems |
Planung & Steuerung |
Durch die Anwendung selbst |
Manuell oder automatisiert von außen |
Das Task Scheduling der IsyFact verfolgt diese Ziele:
- "Nahtlose" Entwicklung mit Spring Boot und IsyFact
-
Die Entwicklung kann alle Funktionen von Spring Boot beim Task Scheduling wie gewohnt nutzen. Die IsyFact integriert sich weitestgehend automatisch in das Task Scheduling von Spring und bietet den Mehrwert ihrer Bausteine an.
- Bereitstellung weiterer Funktionalität zum Task Scheduling
-
Das Task Scheduling von Spring ist weniger flexibel als die direkte Nutzung der Java Concurrency API. Die IsyFact bietet als Mehrwert zusätzliche Anwendungsfälle an, basierend auf Java Multithreading.
- Konfiguration aller wesentlichen Aspekte
-
Tasks müssen mindestens die folgenden Möglichkeiten zur Konfiguration bieten:
-
Umgebungsabhängige Aktivierung bzw. Deaktivierung,
-
Credentials zur Authentifizierung und Autorisierung.
-
- Erfüllung nichtfunktionaler Anforderungen
-
Tasks müssen die folgenden, nichtfunktionalen Anforderungen erfüllen. Sie müssen:
-
fachliche Operationen nachvollziehbar aufrufen,
-
wichtige Informationen und Metadaten ihrer Ausführungen ins Log schreiben,
-
sich wie ein technischer Benutzer (Client) authentifizieren können,
-
überwachbar sein.
-
2. Architekturübersicht
Der Baustein Task Scheduling nutzt zur Erfüllung seiner Aufgaben mehrere Produkte und andere Bausteine der IsyFact.
Der Baustein Task Scheduling setzt direkt auf das Task Scheduling von Spring auf, und erweitert dieses. Außerdem nutzt er Spring AOP aus dem Spring Framework und die @AspectJ-Annotationen des Produkts AspectJ. Wie der Baustein diese Produkte nutzt, beschreibt die Seite "Task Scheduling mit Spring".
Des Weiteren nutzt er mehrere Bausteine der IsyFact, um ihre Funktion für Tasks verfügbar zu machen. Dazu gehören die Bausteine Logging, Security, Überwachung und Konfiguration. Wie genau die Integration aussieht, beschreibt die Seite "Integration der IsyFact in das Task Scheduling".