Zum Hauptinhalt springen

Flow-Priorität

In den Einstellungen für Flows und Vorlagen legen Sie die Priorität eines Flows fest. Sie wirkt in umfangreichen Projekten, die den Router zeitweise auslasten: Ist gerade kein Worker-Thread frei, entscheidet die Priorität, welcher wartende Flow als Nächstes an die Reihe kommt.

Was die Priorität bewirkt – und was nicht

Der OPC Router führt jeden Transfer auf einem Worker-Thread aus. Standardmäßig hält er davon 80 bereit, dazu 5 weitere, die ausschließlich Flows mit hoher Priorität bedienen. Für jede der drei Prioritätsstufen gibt es eine eigene Warteschlange.

  • Vorrang in der Warteschlange: Die 80 allgemeinen Worker-Threads bedienen zuerst die hohe, dann die normale, dann die niedrige Priorität.
  • Zusätzliche Worker-Threads: Die 5 reservierten Worker-Threads nehmen ausschließlich Flows mit hoher Priorität an. Deshalb kommen diese Flows auch dann noch zum Zug, wenn alle allgemeinen Worker-Threads belegt sind.
  • Keine Verdrängung: Ein bereits laufender Transfer wird nie unterbrochen, gleich welche Priorität der wartende Flow hat. Auch ein Flow mit hoher Priorität wartet also, bis ein Worker-Thread frei wird – er bekommt nur früher einen als die anderen.

Wie ein Transfer im Einzelnen abläuft und wodurch er einen Worker-Thread längere Zeit belegen kann, steht unter Wie ein Flow ausgeführt wird.

Prioritäten

PrioritätBeschreibung
Hohe PrioritätFlows mit hoher Priorität werden bei ausgelastetem Router am zuverlässigsten ausgeführt. Sie eignen sich für zeitkritische Aufgaben, zum Beispiel das Alarm- und Ereignismanagement oder die Synchronisation zeitkritischer Systeme wie Produktionslinien.

Hinweis: Sind auch die reservierten Worker-Threads dauerhaft mit Flows hoher Priorität belegt, kommen Flows der übrigen Stufen nicht mehr an die Reihe.
Normale Priorität (Standard)Flows mit normaler Priorität eignen sich für Aufgaben, die nicht zeitkritisch sind, zum Beispiel die Protokollierung oder die Synchronisation nicht zeitkritischer Systeme wie Datenbanken.

Hinweis: Solange alle Worker-Threads mit Flows hoher und normaler Priorität belegt sind, werden keine Flows niedriger Priorität ausgeführt.
Niedrige PrioritätFlows mit niedriger Priorität eignen sich für Aufgaben, die nicht zeitkritisch sind und bei denen größere Verzögerungen unproblematisch sind, zum Beispiel das Archivieren von Daten oder das Löschen alter Daten.
tipp

Vergeben Sie die hohe Priorität sparsam: Sie verschafft nur so lange einen Vorteil, wie wenige Flows sie tragen. Tragen alle Flows dieselbe Stufe, gibt es keinen Vorrang mehr.