Verhalten von Messaging-Engine und Server beim Verlust der Verbindung zu einem Datenspeicher konfigurieren

Wenn die Verbindung zwischen einer aktiven Messaging-Engine und ihrem Datenspeicher verloren geht, weil ein Fehler aufgetreten ist oder Sie die Datenbank für Wartungsarbeiten stoppen, können Sie durch Konfiguration des Servers für automatischen Neustart sicherstellen, dass die Messaging-Engine nach der Wiederherstellung der Verbindung ordnungsgemäß funktioniert.

Informationen zu diesem Vorgang

Das in diesem Artikel beschriebene Verhalten tritt nur ein, wenn die Messaging-Engine aktiv ist und exklusive Sperren für ihren Datenspeicher einrichtet hat.

Indem Sie die angepasste Eigenschaft "sib.msgstore.jdbcFailoverOnDBConnectionLoss" für eine Messaging-Engine definieren, können Sie das Verhalten der Messaging-Engine und ihres Hostservers beim Verlust der Verbindung zum Datenspeicher festlegen.
Tabelle 1. Verhalten, das mit der angepassten Eigenschaft "sib.msgstore.jdbcFailoverOnDBConnectionLoss" festgelegt wird. In der ersten Spalte der Tabelle sind die Werte der angepassten Eigenschaft "sib.msgstore.jdbcFailoverOnDBConnectionLoss" aufgelistet. In der zweiten Spalte wird das Verhalten der Messaging-Engine erläutert, wenn die Datenspeicherverbindung verloren geht.
Eigenschaftswert Verhalten beim Verlust der Verbindung zum Datenspeicher
true (Standardeinstellung)
Der High Availability Manager stoppt die Messaging-Engine und ihren Hostanwendungsserver, wenn die nächste Prüfung des Typs Ist aktiv des Stammgruppenservice stattfindet (der Standardwert sind 120 Sekunden). Wenn der Server von einem Node Agent überwacht wird und Sie den automatischen Neustart in der Überwachungsrichtlinie für den Server aktiviert haben, wird der Server erneut gestartet. Die Messaging-Engine wird gestartet, wenn ein entsprechender Server verfügbar ist.
Anmerkung: Nachrichten, die eine geringere Zuverlässigkeitsstufe als "Garantiert, persistent" haben, werden von der Messaging-Engine möglicherweise in der Zeit zwischen den Prüfungen Ist aktiv akzeptiert und können verloren gehen.
false

Die Messaging-Engine wird weiterhin ausgeführt und akzeptiert Anforderungen und versucht in regelmäßigen Abständen erneut, die Verbindung zum Datenspeicher wiederherzustellen. Werden weitere Anforderungen an die Messaging-Engine übergeben, während der Datenspeicher nicht verfügbar ist, können die Ergebnisse unvorhersehbar sein, und die Messaging-Engine kann einen inkonsistenten Zustand aufweisen, wenn die Verbindung zum Datenspeicher wiederhergestellt wird.

Anmerkung: Wenn weitere Anforderungen an die Messaging-Engine übergeben werden, kann selbst das nicht persistente Messaging scheitern, weil die Messaging-Engine den Datenspeicher möglicherweise verwenden muss, um beispielsweise einer Nachricht eine eindeutige ID zuzuordnen oder um nicht persistente Nachrichten aus dem Speicher zu verschieben.
[z/OS]false [z/OS]

Die Messaging-Engine wird weiterhin ausgeführt und akzeptiert Anforderungen und versucht in regelmäßigen Abständen erneut, die Verbindung zum Datenspeicher wiederherzustellen.

Anmerkung: Unter dem Betriebssystem z/OS, in dem die Hochverfügbarkeitsumgebung aktiv ist (die in Clustern zusammengefasste WebSphere Application Server und DB-Gruppen mit gemeinsamer Datennutzung enthält), wird die Einstellung false bevorzugt und empfohlen. Ein Szenario, in dem die Einstellung false nicht geeignet ist, ist ein Cluster mit nur einem Member und ohne Server für die Failover-Messaging-Engine.

Vorgehensweise

  1. Klicken Sie auf Serviceintegration -> Busse -> Busname -> [Topologie] Messaging-Engines -> Name_der_Engine -> [Weitere Eigenschaften] Angepasste Eigenschaften, um zu der Anzeige mit den angepassten Eigenschaften für die Messaging-Engine zu navigieren.
  2. Klicken Sie auf Neu.
  3. Geben Sie sib.msgstore.jdbcFailoverOnDBConnectionLoss im Feld "Name" und true im Feld "Wert" ein.
  4. Klicken Sie auf OK.
  5. Speichern Sie Ihre Änderungen in der Masterkonfiguration.
  6. Starten Sie den Anwendungsserver erneut.
  7. Wenn Sie einen Cluster haben, wiederholen Sie die vorherigen Schritte, um diese Eigenschaft für jede Messaging-Engine im Cluster hinzuzufügen.

Ergebnisse

Geht die Verbindung zwischen der Messaging-Engine und ihrem Datenspeicher verloren, wird der Anwendungsserver, der die Messaging-Engine enthält, beendet.

Wenn der Server erneut gestartet werden soll, müssen Sie sicherstellen, dass Automatischer Neustart in der Überwachungsrichtlinie für den Server ausgewählt ist.

Nächste Schritte

Wenn ein Server in dieser Situation erneut gestartet wird, erscheinen Nachrichten mit der ID CWSID0039E in den JVM-Protokollen für den Server.

Klicken Sie nach einem Serverneustart auf Serviceintegration -> Busse -> Busname -> [Topologie] Messaging-Engines, um den Status der Messaging-Engine anzuzeigen. Vergewissern Sie sich, dass die Messaging-Engine erneut gestartet wurde und aktiv ist.

Wenn der Server Member eines Clusters ist, vergewissern Sie sich, dass die Cluster-Member immer noch für hohe Verfügbarkeit aktiviert sind, indem Sie die Anweisungen im Artikel Hohe Verfügbarkeit verwalten, wenn Messaging-Engines nicht gestartet werden können befolgen.

Sie können Ihr System so optimieren, dass der Verlust der Datenbankverbindung schnell erkannt wird und die Messaging-Engine eine angemessene Zeit auf die Wiederverfügbarkeit des Datenspeichers wartet, bevor sie versucht, einen anderen Server zu starten.


Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tjm_dsconnloss
Dateiname:tjm_dsconnloss.html