BPM-Workflow

Beschreibung

Über den BPM-Workflow ist es möglich, Nachrichten speziell auf einem separaten (Tomcat-)Knoten zu verabeiten. Dies findet zum Beispiel bei Nutzung des Wim-Moduls anwendung in Bezug auf den Wim-Workflow).

Eine weitere Anwendung ist die Notwendigkeit einer separaten VM (entspricht separatem Knoten) für die Verarbeitung eines speziellen Nachrichtentyps.

Realisierung

Die Umsetzung benötigt zwei Einstellungen. Auf dem separaten Knoten darf für die Verarbeitung ausschließlich ein Queue-Service laufen, welcher eine spezielle Kategorie von Nachrichten verarbeitet. Dadurch wird gewährleistet, dass keine anderen Nachrichten auf diesem Knoten keine anderen Nachrichten verarbeitet werden. Weiterhin muss vermieden werden, dass auf anderen Knoten Nachrichten des zu separierenden Typs verarbeitet werden. Dafür muss in den für die Verarbeitujng relevanten Channels am Anfang eine weitere Action eingefügt werden.

Action - BPMDispatcher

In den für die Verarbeitung der speziellen Nachrichten relevanten Channels muss am Anfang die BPMDispatcher-Action eingefügt werden.

Klasse: org.b2bbp.runtime.actions.internal.BPMDispatcher

Diese Action bekommt die Eigenschaft B3P_WORKFLOW_TYPE mit dem Wert W oder A.

Beispiel:

QueueService

Auf dem separaten Knoten für die Verarbeitung der Nachrichten wird ein QueueService benutzt. Der Service muss in einem Cluster einem Knoten zugewiesen sein. Diesem Knoten sollte kein anderer Service zugewiesen sein.

Klasse: org.b2bbp.service.inbound.queue.QueueService3

Der Service muss folgende Eigenschaften haben:

B3P_QUEUE_SIZE_GROUP_WORKFLOW = 1

B3P_WORKFLOW_TYPE mit Wert A oder W analog zur Action.

Beispiel:

View Me   Edit Me