Arbeitsteilung

wer macht was

In jeder größeren Anwendung gibt es längerwierige Arbeiten oder auch zyklische Arbeiten, die auch ohne Benutzer-Interaktion durchgeführt werden können.

Diese Arbeiten können in Systemdienste ausgelagert werden.

Systemdienste

Bei Systemdiensten gibt es solche, die nach einem Trigger Einmal-Aktionen ausführen. Daneben gibt es auch Dienste, welche sich selbst die anstehende Arbeit suchen und diese durchführen.

SR-JRC macht keinerlei Vorgaben für die Systemdienste. Es bietet eine Starthilfe an, die für die Initialisierung der Dienste sorgt. Ferner gibt es den Dienste-Verwalter, der in der Lage ist, Dienste zu starten und zu beenden. Wird der Dienste-Verwalter priveligiert gestartet, ist er auch in der Lage, Systemdienste unter einem anderen Benutzer zu starten. Daneben überwacht er auch die Dienste und hält deren Status in der Datenbank aktuell.

flexibel in der Verteilung

Dienste haben immer einen Bezug zu dem Rechner, auf dem sie laufen. Bei der Installation wird der Datenbank-Eintrag des Dienstes entsprechend erzeugt, bzw. angepasst.

Der Dienste-Verwalter ermittelt beim Start, auf welchem Rechner er läuft und kümmert sich nur um Dienste, die diesem Rechner zugeordnet wurden. So kann ein Dienst ohne größeren Aufwand skalieren, indem man ihn auf mehrere Rechner installiert.

alles unter Kontrolle

Natürlich möchte man in einer Desktop-Anwendung auch Bescheid wissen über den Status der Systemdienste. Dafür gibt es eine fertige Oberfläche, die im Bereich Optionen eingebunden wird.

Über diese Oberfläche können Systemdienste gestartet, oder beendet werden. Ihr Zustand wird als Symbol angezeigt.