Toleranz gegenüber einer Unterbrechung der Datenbankverbindung konfigurieren

Verwendung

Um das Herunterfahren der INUBIT Process Engine wegen kurzzeitiger Probleme mit der Datenbankverbindung zu vermeiden, können Sie einen sogenannten Leaky-Bucket-Algorithmus konfigurieren. Der Algorithmus berechnet das Fehlerniveau als Prozentwert aus der Anzahl der tatsächlich aufgetretenen Fehler und der konfigurierten maximalen Fehleranzahl. Das Fehlerniveau wird erhöht, wenn ein Fehler auftritt, und verringert, wenn eine bestimmte Zeitspanne vergangen ist. Erst wenn die maximale Fehleranzahl erreicht oder überschritten ist (Fehlerniveau >= 100%), wird die INUBIT Process Engine heruntergefahren, weil die Verbindung zur Datenbank als unterbrochen angesehen wird.

Funktionsprinzip

Zum Konfigurieren der Toleranz gegenüber einer Unterbrechung der Datenbankverbindung verwendet INUBIT den Leaky-Bucket-Algorithmus. Zu diesem Zweck stehen die folgenden Parameter zur Verfügung, die wie unten beschrieben über das INUBIT CLI konfiguriert werden können.

  • Fehlerschwellwert

    Mit dem Parameter threshold wird die maximale Anzahl der im INUBIT-System zulässigen Datenbankverbindungsfehler konfiguriert. Dieser Wert muss eine ganze positive Zahl sein, z.B.: 25

  • Fehlerniveau

    Der Parameter errorlevel zeigt den Anteil der tatsächlich aufgetretenen Datenbankverbindungsfehler (Verbindungsverlust oder beliebige andere Fehler während der Datenbankverbindung) am Fehlerschwellwert. Dieser Wert wird nur berechnet und kann nicht gesetzt werden.

  • Abbaurate

    Mit dem Parameter droprate wird die Rate konfiguriert, um die das Fehlerniveau nach Ablauf des im Parameter interval konfigurierten Abbauintervalls reduziert wird. Dieser Wert muss eine ganze positive Zahl sein, z.B.: 4

  • Abbauintervall

    Mit dem Parameter interval wird die Zeitspanne in Sekunden konfiguriert, nach der das Fehlerniveau um die im Parameter droprate konfigurierte Abbaurate reduziert wird. Dieser Wert muss eine ganze positive Zahl sein, z.B.: 3600

Wenn der konfigurierte Fehlerschwellwert erreicht ist, wird die INUBIT Process Engine gestoppt, weil ein ernstes Datenbankverbindungsproblem aufgetreten ist.

Sie können den Leaky-Bucket-Algorithmus Ihres INUBIT-Systems durch die drei Parameter threshold, droprate und interval konfigurieren.

Darüber hinaus können Sie das Verhalten des Leaky-Bucket-Algorithmus überwachen und die Parameter anpassen.

administration guide 404 1

Das Verändern der folgenden Parameter zur Toleranz gegenüber einer Unterbrechung der Datenbankverbindung erfolgt auf das eigene Risiko des Benutzers.

Um Datenverlust zu vermeiden, sollten diese Parameter nicht bei einem geplanten Herunterfahren der Datenbank verwendet werden. In diesem Fall sollte der Wartungsmodus für die INUBIT Process Engine aktiviert werden.

Aufruf

  • Interaktiver Modus

    startcli.bat [-u <Benutzerkennung>] [-p <Passwort>]
    ...
    dbconnectiontolerance [show|set <Toleranzparameter>]
  • Skriptmodus

    startcli.bat [-u <Benutzerkennung>] [-p <Passwort>] --execCommand "dbconnectiontolerance
    [show|set <Toleranzparameter>]"

Zusammenspiel der Datenbank-Propertys mit einem erneuten Verbindungsversuch nachdem die Verbindung zur Datenbank unterbrochen war

Es gibt zwei Propertys zum erneuten Verbinden mit einer Datenbank nach einer Verbindungsunterbrechung:

  • noOfRetries

    Diese Property gibt an, wie oft die INUBIT Process Engine versucht, die Verbindung zu einer Datenbank nach einer Verbindungsunterbrechung wiederherzustellen. Sobald die noOfRetries überschritten wurde, wird/werden die INUBIT Process Engine(s) heruntergefahren.

  • retryInterval

    Diese Property gibt an, wie lange die INUBIT Process Engine bis zu einem erneuten Verbindungsversuch wartet.

Siehe:

Kommandooptionen

Option Description

-h,--help

Hilfe anzeigen

show

Anzeigen der gegenwärtigen Werte für errorlevel, threshold, droprate und interval.

  • errorlevel

    Fehlerniveau: Anteil der tatsächlich aufgetretenen Fehler am konfigurierten Fehlerschwellwert (kann nur gelesen werden)

  • threshold

    Fehlerschwellwert: Maximale Anzahl der Fehler, die eine dauerhafte Unterbrechung der Datenbankverbindung anzeigt. Ist der Wert überschritten, wird Process Engine heruntergefahren.

  • droprate

    Abbaurate, um die das Fehlerniveau reduziert wird, wenn das im Parameter interval konfigurierte Abbauintervall abgelaufen ist.

  • interval

    Abbauintervall in Sekunden. Ist das Abbauintervall abgelaufen, wird das Fehlerniveau um die im Parameter droprate konfigurierte Abbaurate reduziert.

set <tolerance parameter>

Zum Setzen der Toleranzparameter

  • threshold

    Fehlerschwellwert: Maximale Anzahl der Fehler, die eine dauerhafte Unterbrechung der Datenbankverbindung anzeigt.

  • droprate

    Abbaurate, um die das Fehlerniveau reduziert wird, wenn das im Parameter interval konfigurierte Abbauintervall abgelaufen ist.

  • interval

    Abbauintervall in Sekunden. Ist das Abbauintervall abgelaufen, wird das Fehlerniveau um die im Parameter droprate konfigurierte Abbaurate reduziert.

Beispiele

  • Interaktiver Modus

    • Anzeigen der gegenwärtigen Werte der Toleranzparameter

      Sind weniger als 25 Verbindungsfehler aufgetreten, wird das Fehlerniveau alle 3600 Sekunden um 4 % reduziert.

      Tritt ein weiterer Verbindungsfehler auf, wird das Fehlerniveau neu berechnet.

      Sind mehr als 25 Verbindungsfehler aufgetreten, wird die INUBIT Process Engine gestoppt.

      CLI|root@[hostname]> dbconnectiontolerance show
      Error level: 0%
      
      Fault threshold: 25
      Drop rate: 4%
      Drop interval (s): 3600 seconds
  • Toleranzparameter threshold auf 100 setzen

    CLI|root@[hostname]> dbconnectiontolerance set threshold 100
    Error level: 0%
    
    Fault threshold: 100
    Drop rate: 4%
    Drop interval (s): 3600 seconds
  • Skriptmodus

    • Anzeigen der gegenwärtigen Werte der Toleranzparameter

      D:\inubit74\client\bin>startcli.bat -u root --execCommand "dbconnectiontolerance show" https://<server>:<port>/ibis/servlet/IBISSoapServlet
      Password:
      Error level: 0%
      
      Fault threshold: 25
      Drop rate: 4%
      Drop interval (s): 3600 seconds
  • Toleranzparameter threshold auf 100 setzen

    D:\inubit74\client\bin>startcli.bat -u root --execCommand "dbconnectiontolerance set threshold 100" https://<server>:<port>/ibis/servlet/IBISSoapServlet
    Error level: 0%
    
    Fault threshold: 100
    Drop rate: 4%
    Drop interval (s): 3600 seconds