Queue-Server und Queues

Queue-Server sind Programme zur Steuerung der Hintergrundverarbeitung von Druck- und Verarbeitungsaufträgen (Jobs). Diese Programme sind Progress-Clients ohne Oberfläche. Aktive Queue-Server werden in proALPHA als Queues geführt. Sie dienen der Auslagerung von Jobs von einem Arbeitsplatzrechner auf einen Server-Rechner. Die Auslagerung bewirkt, dass der Benutzer die Tätigkeit an seinem Arbeitsplatzrechner nicht für die Dauer der Ausführung eines Jobs unterbrechen muss. In Queues werden in der Regel solche Jobs ausgelagert, die regelmäßig ausgeführt werden oder die sehr umfangreich sind.

Queue-Server verwenden

Für den Einsatz in Ihrem Unternehmen stehen Queue-Server für verschiedene Verwendungszwecke zur Verfügung.

  • Universal verwendbarer Queue-Server

    Dieser Queue-Server ermöglicht die Auslagerung beliebiger Jobs in Queues, z.B. für umfangreiche Berechnungen. Er kann daher auch mehrfach gestartet werden. Der universale Queue-Server ist für regelmäßig anstehende Jobs (permanente Jobs) und für gelegentlich anstehende Jobs verwendbar. Der Queue-Server wird bei der Installation von proALPHA installiert und nach unternehmensspezifischen Anforderungen für die Abarbeitung von Jobs konfiguriert.

  • Verschiedene spezielle Queue-Server

    Diese Queue-Server werden für bestimmte Funktionen verwendet, z.B. in der Produktion für den Datenaustausch im Rahmen der Optimierung. Ob die Queue-Server für gelegentlich anstehende oder für permanente Jobs verwendet werden, hängt von der jeweiligen Funktion ab. Die Queue-Server werden bei der Installation der betreffenden Funktionen installiert und konfiguriert.

Queue-Server konfigurieren

Sie können den installierten Queue-Server ohne weitere Konfiguration mit vordefinierten Einstellungen verwenden. Bei dieser Art der Verwendung wird die Queue in der proALPHA Arbeitssitzung für die Ausführung beliebiger Jobs herangezogen.

Darüber hinaus kann der Queue-Server für den Betrieb von jobspezifischen Queues konfiguriert werden. So können Jobs auf bestimmten Queues laufen, um eine schnelle Ausführung zu sichern. Dazu werden für die Jobs der betreffenden Druck- oder Verarbeitungsprogramme jeweils eigene Queues eingerichtet. Für welche Jobs eine Queue verwendet wird, bestimmt der Queue-Typ, über den das Programm des Jobs und der Queue-Server verbunden werden. Queue-Typen ermöglichen zudem das Verteilen von Jobs auf verschiedene Rechner innerhalb eines Netzwerks. Die Rechner werden dabei als Queue-Server verwendet.

Konfigurationseinstellungen für Queues werden in der proALPHA Konfigurationsdatei für Serverprozesse (pa-env.bat) anhand von Parametern hinterlegt. Verschiedene Parameter können auch in der proALPHA Startkonfiguration (pastart.xml) hinterlegt und aus der Konfigurationsdatei über einen entsprechenden Parameter abgerufen werden. Einstellungen zum Steuern der Queue-Server werden in der proALPHA Startdatei für Serverprozesse (pa-adm.bat) und weiteren Batch-Dateien hinterlegt. Die Batch-Dateien liegen im Verzeichnis startup\server Ihrer proALPHA Installation. Erläuterungen zu den Inhalten und zum Pflegen der Dateien sind in den Dateien als Kommentare hinterlegt.

Queues werden für Ihr Unternehmen individuell konfiguriert. Informationen dazu erhalten Sie von Ihrem Berater. Weiterführende Informationen zur Konfiguration und zur Installation finden Sie im proALPHA Wiki. Das proALPHA Wiki ist Bestandteil des proALPHA Kundenportals. Die Zugangsdaten für das proALPHA Kundenportal erhalten Sie vom proALPHA Service.

Parameter für Queues in der proALPHA Startkonfiguration (Auswahl)

Hinweis: Erläuterungen zum Hinterlegen von Parametern finden Sie im Thema "Startkonfiguration".

Startparameter

Bedeutung

Erläuterungen

ConfigFile

Name und Verzeichnis der Konfigurationsdatei für die Startkonfiguration

-

SessionType

Sitzungstyp, unter dem die Queue läuft.

-

SessionTitle

Fenstertitel der Queue

-

QueueTyp

Queue-Typ, auf den der Queue-Server festgelegt ist.

Wenn für den Queue-Server kein Queue-Typ hinterlegt ist, dann kann er alle Jobs ausführen, die auf keinen bestimmten Queue-Typ festgelegt sind. Gleiches gilt, wenn für den Queue-Server ein Queue-Typ hinterlegt ist, der in den Stammdaten nicht angelegt ist.

QueuestartConnectionCycles

Anzahl der Verbindungsversuche des Queue-Servers zu den Datenbanken

Der Queue-Server versucht alle zehn Sekunden, die Verbindung zu den Datenbanken aufzubauen. Falls die Datenbanken beim Start des Queue-Servers noch nicht gestartet sind, wird so die Ausführung des Jobs nicht sofort abgebrochen.

Der Parameter "QueuestartConnectionCycles" bestimmt, wie oft der Verbindungsaufbau erneut versucht wird. Der Abbruch erfolgt erst, wenn auch nach der festgelegten Anzahl von Verbindungsversuchen noch keine Verbindung zu den Datenbanken möglich ist.

Defaultwert ist "60".

PollIdleTime

Wartezeit von Queues zwischen Prüfungen auf neue Jobs

Eine Queue, die gerade keinen Job abarbeitet, prüft in regelmäßigen Abständen, ob neue Jobs zur Abarbeitung vorliegen (Ausnahmen: Queues für permanente Jobs).

Der Parameter "PollIdleTime" bestimmt die Zeit in Sekunden zwischen zwei Prüfungen. Minimalwert ist "1", Maximalwert ist "60".

Während der Wartezeit wird die Queue genutzt, um Job-Protokolleinträge für beendete Jobs zu löschen, deren Speicherdauer abgelaufen ist.

JobNr

Nummer des permanenten Jobs, der über den Queue-Server ausgeführt wird.

Über die Queue wird nur der permanente Job mit dieser Nummer ausgeführt.

Die Queue wird zur Abarbeitung dieses Jobs gestartet und nach der Abarbeitung wieder beendet. In Verbindung mit dem Parameter "predecessorJobNo" wird der Start des Jobs so lange verzögert, bis der Vorgänger-Job erfolgreich beendet wurde.

predecessorJobNo

Nummer des permanenten Jobs, der als Vorgänger ausgeführt wird.

Der im Parameter "JobNr" angegebene Job wird erst dann gestartet, wenn der im Parameter "predecessorJobNo" angegebene Job beendet ist.

Verwendung

Die Kombination Vorgänger/Nachfolger ist unter folgenden Bedingungen sinnvoll:

  • Die Funktionen der Jobs stehen in logischem Zusammenhang, z.B. Belegarchivierung und Datenexport der archivierten Belegdaten

  • Die Laufzeit des Vorgängers unterliegt starken Schwankungen.

So kann z.B. festgelegt werden, dass der Datenexport erst dann startet, wenn der Tagesabschluss mit der Belegarchivierung vollständig abgeschlossen ist.

Der Parameter wird nur auf Queue-Servern ausgewertet, die mit dem Parameter "JobNr" gestartet wurden. Der in "JobNr" übergebene Job prüft beim Start, ob der in "predecessorJobNo" übergebene Job erfolgreich beendet wurde. Erst dann wird der Job ausgeführt.

Bedingung ist, dass die Jobs zeitlich versetzt starten. Dies gewährleistet, dass der Status des Vorgängers korrekt ermittelt wird. Bei einem gleichzeitigen Start kann es vorkommen, dass der Status der vorangegangenen Ausführung (z.B. vom Vortag) fälschlicherweise als Status der aktuellen Ausführung interpretiert wird.

Wenn der Vorgänger angehalten oder mit einem Fehler abgebrochen wurde, dann werden Systemmeldungen mit den entsprechenden Fehlerstatus protokolliert. Der Nachfolger erhält den Status "Fehler" und wird nicht gestartet.

PrintServer

Festlegung, ob über den Queue-Server ausschließlich Druckaufträge ausgeführt werden.

Der Einsatz des Parameters "PrintServer" wird empfohlen, wenn Ihre proALPHA Datenbank und Ihr normalerweise genutzter Queue-Server unter UNIX installiert sind. Damit Sie Druckaufträge im Hintergrund auf Windows-Druckern ausgeben können, muss zusätzlich ein Queue-Server unter Windows laufen. Damit dieser Queue-Server nicht auch Verarbeitungsaufträge ausführt, die der UNIX-Queue-Server schneller ausführen kann, bestimmen Sie über den Parameter "PrintServer", dass der Windows-Queue-Server ausschließlich Druckaufträge ausführt.

TimeOut

Zeitverzögerung beim Anhalten des Queue-Servers

Wenn der Queue-Server ausgelastet ist, reagiert er ggf. nicht sofort auf den Befehl zum Anhalten.

Der Parameter "TimeOut" bestimmt die Zeitspanne in Sekunden, nach deren Ablauf der Befehl zum Anhalten erneut gesendet wird.

Wenn der Wert des Parameters "0" ist, dann wird der Befehl nur einmal gesendet.

UserID

Benutzerkennung für die Anmeldung an der Datenbank

Der Queue-Server wird mit diesen Benutzerdaten an der Datenbank angemeldet.

In der Regel wird der Queue-Server automatisch als interner Benutzer "Batch" angemeldet. Der Benutzer "Batch" hat keine Zugriffsberechtigung für proALPHA.

Für die Datenbank können Sicherheitseinstellungen bestehen. Damit der Queue-Server beim Ausführen von Jobs trotzdem Datenbankabfragen auswerten kann, können Sie den Queue-Server mit den Daten eines zugriffsberechtigten Benutzers anmelden.

PasswordBatch

Hinweis: Der Parameter "PasswordBatch" kann ausschließlich in der Konfigurationsdatei der Startkonfiguration definiert werden und ist nicht übersteuerbar.

Passwort für die Anmeldung an der Datenbank

Queue-Server steuern

Bei entsprechender Konfiguration der proALPHA Startdatei pa-adm.bat werden die eingerichteten Queues beim Start der Arbeitssitzung automatisch gestartet und beim Beenden automatisch angehalten. Zum Starten oder Anhalten während des Betriebs können Sie entsprechende Verknüpfungen im Windows-Startmenü oder auf der Oberfläche einrichten. Die Verknüpfungen erfassen Sie als Aufrufe der Startdatei pa-adm.bat mit entsprechenden Progress Startparametern. Erläuterungen hierzu finden Sie in der Startdatei pa-adm.bat. Die Erläuterungen sind in der Datei als Kommentare hinterlegt.

Aktive Queues werden als Instanzen des Queue-Servers geführt. Dabei bestimmt der Queue-Typ, wie viele Instanzen gleichzeitig aktiv sein können (Feld Instanzen im Stammdatensatz des Queue-Typs). Während des Betriebs prüft eine Queue in regelmäßigen Abständen, ob Jobs zur Ausführung vorliegen.

Queues für permanente Jobs

Queues für permanente Jobs können Sie über den Zeitplandienst des Betriebssystems steuern. Dazu müssen Sie den Zeitplandienst nach der Vorgabe des Betriebssystems einrichten. Die Queue eines permanenten Jobs wird zum jeweiligen Ausführungstermin automatisch gestartet und nach jeder Ausführung automatisch wieder angehalten. Der Job wird in der Regel durch die Startdatei pa-adm.bat mit entsprechenden Progress Startparametern aufgerufen. Ein solcher Aufruf kann z.B. wie folgt aussehen: pa-adm.bat production job -o 9999. Wenn Sie z.B. den Zeitplandienst von Windows verwenden, dann erfassen Sie den entsprechenden Aufruf von pa-adm.bat im Zeitplandienst.

Hinweis: Beim Start des Queue-Servers wird der Queue-Typ geprüft. Wenn zu dem Queue-Server kein Queue-Typ hinterlegt ist, dann wird der Queue-Typ verwendet, der zu dem Programm des Jobs hinterlegt ist. Wenn zu dem Queue-Server ein abweichender Queue-Typ hinterlegt ist, dann wird der Job nicht gestartet. Der Benutzer, der den permanenten Job angelegt hat, wird in einer Systemmeldung entsprechend informiert.

Queues überwachen

Zur Überwachung von Queues steht die Queue-Konsole zur Verfügung. Die Queue-Konsole zeigt alle aktiven Queues in einer Übersicht, unabhängig davon, welche Betriebssysteme die Queue-Server nutzen. Je Queue können Sie verschiedene Informationen einsehen. Die Ansicht der Queue-Konsole können Sie aktualisieren. Dabei entfallen Einträge für zwischenzeitlich angehaltene Queue-Server, für neu gestartete Queue-Server werden Einträge hinzugefügt. Zum Aktualisieren gibt es die Schaltfläche .

Über die Queue-Konsole können Sie Queues bei Bedarf anhalten (Schaltfläche ).

Wichtige Informationen und Informationsquellen in der Queue-Konsole sind u.a.

Informationen

Informationsquellen

Daten einer Queue

Übersicht der Queues

Je Queue sehen Sie in den Spalten der Übersicht u.a. folgende Daten:

Spalten

Daten

QNr

Nummer, unter der die Queue in der Queue-Konsole geführt wird.

Queue-Typ

Queue-Typ, auf den der Queue-Server festgelegt ist.

Titel

Fenstertitel der Queue

Startdatum

StartZt

Datum und Uhrzeit, zu denen die Queue gestartet wurde.

Instance Name

Bezeichnung

Programmname und Bezeichnung des Druck- oder Verarbeitungsprogramms, das über die Queue als Job ausgeführt wird.

Status

Status der Queue:

  • "aktiv": Die Queue ist aktiv. Sie führt entweder gerade einen Job aus oder wartet auf den nächsten Job.

  • "inaktiv": Die Queue ist inaktiv. Dieser Status deutet auf einen Fehler hin, die Queue wurde nicht ordnungsgemäß beendet.

    Zum Feststellen der Ursache können Sie unter Funktion | Protokoll Systemmeldungen einsehen, die beim Betrieb der Queue protokolliert wurden.

Dir

Direktaufruf durch einen Job

  • "ja": Die Queue wurde zur Ausführung eines permanenten Jobs gestartet.

    Informationen zu dem Job sehen Sie unter Funktion | Job-Details.

  • "nein": Die Queue wurde nicht zur Ausführung eines permanenten Jobs gestartet.

Protokoll zu einer Queue

Menüpunkt Funktion | Protokoll

Das Protokoll informiert Sie über Probleme, die beim Betrieb der Queue aufgetreten sind. Entsprechende Systemmeldungen werden in dem Protokoll festgehalten. Das Protokoll informiert zudem anhand von Systemmeldungen über das Starten und Anhalten der Queue.

Verbindungsdetails der Queue-Server

Menüpunkt Funktion | Verbindungsdetails

Je Queue-Server sehen Sie u.a. folgende Verbindungsdetails:

  • Name des Rechners, der als Queue-Server genutzt wird.

  • Betriebssystem

  • Name und Pfad der Konfigurationsdatei

  • Sitzungstyp der proALPHA Arbeitssitzung

  • Namen der für den Rechner installierten Drucker

Kommandos zum Anhalten einer Queue

Menüpunkt Funktion | Kommandos

Kommandos, die der aktuelle Benutzer erteilt hat. Je Kommando sehen Sie u.a. Datum und Uhrzeit der Ausführung sowie die Nummer des Jobs der angehaltenen Queue.

Daten zu dem Job einer Queue

Menüpunkt Funktion | Job-Details

Je Job sehen Sie u.a. folgende Daten:

  • Job-Nummer

  • Job-Status

  • Datum und Uhrzeit, zu denen der Job zuletzt ausgeführt wurde.

  • Datum und Uhrzeit, zu denen der Job angelegt wurde.

  • Benutzerkennung des Benutzers, der den Job angelegt hat.