Clientweiterleitung für Anwendungen konfigurieren, die DB2-Datenbanken verwenden
Das Feature für Clientweiterleitung ermöglicht Ihnen, Unternehmensanwendungen für eine DB2-Datenbank so zu konfigurieren, dass die Verbindung nach einem Kommunikationsverlust wiederhergestellt wird und die Anwendungen mit minimaler Unterbrechung ihre Arbeit fortsetzen können. Die Weiterleitung ist ein zentraler Aspekt der Unterstützung des Dauerbetriebs, aber eine Weiterleitung ist nur möglich, wenn es eine alternative Position gibt, die der Anwendungsserververbindung bekannt ist.
Vorbereitende Schritte
Für diese Task wird Folgendes vorausgesetzt:
- Die DB2-Datenquelle, zu der die Anwendung die Verbindung herstellt:
- DB2 for z/OS Version 10.1 oder höher
- DB2 Database for Linux, UNIX und Windows Version 9.7 oder höher
- Sie haben die DB2-Datenbank mit einem redundanten Setup bzw. der Möglichkeit der Übernahme des DB2-Servers durch einen Bereitschaftsknoten konfiguriert.
Informationen zu diesem Vorgang
Die Clientweiterleitung für DB2 ermöglicht Ihnen, Informationen zu alternativen Servern für den Fall anzugeben, dass die Verbindung zur Datenbank fehlschlägt.
Der JCC-JDBC-Treiber für DB2 unterstützt die Clientweiterleitung ohne Konfiguration auf Clientseite und stellt, sofern die Weiterleitung im DB2-Server aktiviert ist, eine erste Verbindung zum DB2-Server her. Wenn der JCC-JDBC-Treiber eine Verbindung zum einem DB2-Server herstellt, für den mindestens ein alternativer Server konfiguriert ist, sendet der primäre Server Informationen über die alternativen Server an den JCC-JDBC-Treiber. Sollte die Verbindung zum primären Server fehlschlagen, kann der JCC-JDBC-Treiber Verbindungen an den alternativen Server weiterleiten. Bei einem Absturz des Anwendungsserverprozesses gehen die Informationen zum alternativen Server jedoch verloren und der Client muss eine neue Verbindung zum Server herstellen. Wenn der Client keine erste Verbindung zum primären Server herstellen kann, hat der Client keine Kenntnis von den alternativen Servern und es ist keine Weiterleitung möglich.
Zur Behebung dieses Problems können Sie eine DB2-Datenquelle im Anwendungsserver mit den Namen und Ports der alternativen Server über die Datenquelleneigenschaften clientRerouteAlternateServerName und clientRerouteAlternatePortNumber konfigurieren, damit die Clientweiterleitung schon beim ersten Verbindungsversuch unterstützt wird. Wenn der JCC-JDBC-Treiber keine Verbindung zum primären DB2-Server herstellen kann, sind die für eine Clientweiterleitung erforderlichen Informationen bereits vorhanden, und der JCC-JDBC-Treiber kann die Verbindung an einen alternativen Server weiterleiten.
Wenn eine Verbindung weitergeleitet wird und der JCC-JDBC-Treiber eine Verbindung zum alternativen DB2-Server hergestellt hat, sendet der alternative Server Informationen zu seinem eigenen alternativen Server an den JCC-JDBC-Treiber. Der JCC-JDBC-Treiber erhält damit die erforderlichen Informationen, um die Verbindung erneut weiterleiten zu können, falls der alternative DB2-Server ausfallen sollte. Der Server, der ursprünglich der alternative Server war, ist jetzt der primäre Server und es wurde ein neuer alternativer Server eingerichtet. Dieser neue Situation von primären und alternativen Server wird jedoch vom JCC-JDBC-Treiber nicht mehr gespeichert. Wenn der Anwendungsserver abstürzt und erneut gestartet wird, muss der JCC-JDBC-Treiber mit der ursprünglichen Serverkonfiguration beginnen und versuchen, eine Verbindung zu dem Server herzustellen, der ursprünglich der primäre Server war.
Sie können das Feature für automatische Clientweiterleitung in den folgenden konfigurierbaren DB2-Umgebungen verwenden:
Vorgehensweise
Beispiel
<dataSource id="DefaultDataSource" jndiName="jdbc/db2">
<properties.db2.jcc
databaseName="sampleDatabase"
driverType="4"
serverName="host"
portNumber="50000"
clientRerouteAlternateServerName="host01, host02, host03"
clientRerouteAlternatePortNumber="50000, 50005, 50000"
retryIntervalForClientReroute="2"
maxRetriesForClientReroute="3" />
...
</dataSource>