Eigenschaften für WebSphere-Datenquelle

Verwenden Sie diese Seite, um erweiterte Datenquelleneigenschaften im Anwendungsserver festzulegen. Diese Eigenschaften aktivieren und konfigurieren Services, die der Anwendungsserver auf Datenquellen anwendet, um Verbindungen in einem Anwendungsserver anzupassen. Diese Eigenschaften haben keine Auswirkungen auf Verbindungen in der Datenbank.

Verwenden Sie einen der folgenden Pfade, um diese Seite der Administrationskonsole aufzurufen:

Register 'Konfiguration'

Größe des Anweisungscaches

Gibt die Anzahl der Anweisungen an, die pro Verbindung zwischengespeichert werden können. Wenn Sie eine Anweisung schließen, speichert der Anwendungsserver diese Anweisung im Cache.

Die Datenquelle von WebSphere Application Server optimiert die Verarbeitung ausführbarer und aufrufbarer Anweisungen, indem sie die Anweisungen zwischenspeichert, die nicht in einer aktiven Verbindung verwendet werden. Mit beiden Anweisungstypen kann die Leistung von Transaktionen zwischen der Anwendung und dem Datenspeicher verbessert werden.
  • Eine vorbereitete Anweisung ist eine vorkompilierte SQL-Anweisung, die in einem PreparedStatement-Objekt gespeichert ist. Der Anwendungsserver verwendet dieses Objekt, um die SQL-Anweisung bei entsprechendem Bedarf in der Laufzeitumgebung der Anwendung mehrfach mit Werten, die von der Laufzeitumgebung bestimmt werden, auszuführen.
  • Eine aufrufbare Anweisung ist eine SQL-Anweisung, die einen Aufruf an eine gespeicherte Prozedur enthält, d. h. eine Reihe vorkompilierter Anweisungen, die eine Task ausführen und ein Ergebnis zurückgeben. Die Anweisung wird im CallableStatement-Objekt gespeichert. Der Anwendungsserver verwendet dieses Objekt, um eine gespeicherte Prozedur bei entsprechendem Bedarf in der Laufzeitumgebung der Anwendung mehrfach mit Werten, die von der Laufzeitumgebung bestimmt werden, auszuführen.

Wenn der Anweisungscache nicht groß genug ist, werden möglicherweise wichtige Einträge gelöscht, um Platz für neue Einträge zu schaffen. Wenn Sie vermeiden möchten, dass Einträge aus dem Cache verworfen werden, können Sie den Maximalwert für die Cachegröße wie folgt bestimmen. Addieren Sie die Anzahl eindeutig vorbereiteter und aufrufbarer Anweisungen (ermittelt durch SQL-Zeichenfolge, Parallelität und Anzeigetyp) aller Anwendungen, die diese Datenquelle auf einem bestimmten Server verwenden. Dieser Wert gibt die Maximalanzahl möglicher Anweisungen an, die für eine bestimmte Verbindung während der Lebensdauer des Servers zwischengespeichert werden können. Wenn Sie die Cachegröße auf diesen Wert einstellen, bedeutet das, dass der Cache nie gelöscht wird. Konfigurieren Sie generell einen größeren Cache für Anwendungen mit einer hohen Anzahl an Anweisungen.

[AIX Solaris HP-UX Linux Windows] [iSeries] Sie können die Anzahl der aus dem Cache gelöschten Einträge auch mit dem Tivoli Performance Viewer verringern. Verwenden Sie eine Standardarbeitsbelastung mit einer typischen Anzahl eingehender Clientanforderungen, eine feste Anzahl an Iterationen und eine Gruppe von Standardkonfigurationseinstellungen.
Anmerkung: Jede größer der Anweisungscache ist, desto mehr Verspätungen treten bei den Systemressourcen auf. Wenn Sie einen zu hohen Wert wählen, könnten deshalb Ressourcen fehlen, weil Ihr System nicht in der Lage ist, mehrere vorbereitete Anweisungen zu öffnen.

Wenn eine bestimmte Anweisung vorhanden ist, die der Anwendungsserver nicht zwischenspeichern soll, konfigurieren Sie den Hinweis auf die Poolfähigkeit der Anwendung mit "false". Wenn der Hinweis auf die Poolfähigkeit auf "false" gesetzt ist, werden Anweisungen vom Anwendungsserver nicht zwischengespeichert. Die Anwendung gibt die Hinweise zur Poolfähigkeit von Anweisungen zur Laufzeit an.

In Testanwendungen können Sie durch die Optimierung des Anweisungscaches den Durchsatz von 10 % auf 20 % verbessern. Möglicherweise ist dies aufgrund von Ressourceneinschränkungen jedoch nicht immer möglich.

Datentyp Integer
Standardeinstellung Der Standardwert richtet sich nach der Datenbank. Gewöhnlich ist 10 der Standardwert. Für die Informix-Versionen 7.3, 9.2, 9.3 und 9.4 ohne die entsprechenden aktuellen Fixes muss 0 als Standardwert verwendet werden. Der Standardwert 0 bedeutet, dass es keine Cacheanweisung gibt.
Erkennung von Multithread-Zugriffen aktivieren

Wenn Sie diese Option auswählen, erkennt der Anwendungsserver Zugriffe durch mehrere Threads.

Erneute Authentifizierung der Datenbank aktivieren

Gibt an, dass es keine exakte Übereinstimmung mit Verbindungen aus dem Verbindungspool des Anwendungsservers geben kann (die Suchkriterien für den Verbindungspool enthalten keinen Benutzernamen und kein Kennwort). Stattdessen wird die erneute Authentifizierung der Verbindung in der Methode "doConnectionSetupPerTransaction()" der Klasse "DataStoreHelper" durchgeführt. Der Anwendungsserver stellt zur Laufzeit keine Implementierung für die erneute Authentifizierung der Verbindung bereit. Deshalb müssen Sie bei Auswahl dieses Feldes die Klasse "DataStoreHelper" erweitern und eine Implementierung der Methode "doConnectionSetupPerTransaction()" bereitstellen, in der die erneute Authentifizierung stattfindet. Wenn Sie dies nicht tun, kann der Anwendungsserver nicht verwendbare Verbindungen zurückgeben. Weitere Informationen finden Sie in der API-Dokumentation zur Methode "com.ibm.websphere.rsadapter.DataStoreHelper#doConnectionSetupPerTransaction".

Die erneute Authentifizierung von Verbindungen kann zu einer Leistungssteigerung führen, da sie die Kosten für das Öffnen und Schließen von Verbindungen reduziert, insbesondere für Anwendungen, in denen häufig Verbindungen mit anderen Benutzernamen und Kennwörtern angefordert werden.
Fehler vermeiden: Sie können die erneute Authentifizierung für die Datenbank nicht aktivieren, wenn Sie "TrustedConnectionMapping" als Alias für die Zuordnungskonfiguration auswählen.gotcha
JMS-Unterstützung für einphasige Optimierung aktivieren

Wenn Sie diese Option auswählen, lässt der Anwendungsserver den Abruf optimierter Verbindungen von dieser Datenquelle durch JMS zu. Diese Eigenschaft verhindert, dass JDBC-Anwendungen (Java Database Connectivity) Verbindungen mit CMP-Anwendungen (Container-Managed Persistence, über Container realisierte Transaktionspersistenz) gemeinsam nutzen.

Kennungen im Cache verwalten

Gibt an, ob der Container zwischengespeicherte Kennungen überwacht, d. h. Kennungen, die eine Anwendungskomponente auch über Transaktions- und Methodengrenzen hinweg aktiv hält. Sie können diese Eigenschaft verwenden, um Verbindungsprobleme zu untersuchen, aber die Überwachung von Handles kann zur Laufzeit zu erheblichen Leistungseinbußen führen.

Wenn die Eigenschaft Kennungen im Cache verwalten in der Administrationskonsole ausgewählt ist und Sie sie abwählen, ist das Feld für Ressourcen der Version 7.0 des Anwendungsservers nicht mehr sichtbar. Dieses Feld wird nur angezeigt, wenn die Eigenschaft "manageCachedHandles" in der Datei "resources.xml" auf true gesetzt ist. Um das Feld verfügbar zu machen, müssen Sie den Wert des manageCachedHandles-Eintrags in der Datei "resources.xml" von false in true ändern oder den folgenden Jython-Befehl im Tool "wsadmin" eingeben:
AdminConfig.modify(myDataSourceVariable, '[[manageCachedHandles "true"]]')
Unterstützte Konfigurationen: Für Ressourcen der Version 6.x des Anwendungsservers ist die Eigenschaft Kennungen im Cache verwalten immer sichtbar. Wenn Sie beispielsweise einen Knoten der Version 6.1 haben, hat der Eintrag in der Datei "resources.xml" keine Auswirkungen darauf, wie das Feld in der Administrationskonsole angezeigt wird. sptcfg
Bei einem alternativen Verfahren für das Debugging von Problemen verwenden Sie die Multithread- und komponentenübergreifenden Diagnose-Alerts, um Verstöße im JCA-Programmiermodell (Java Connectivity Architecture) zu erkennen. Zum Aktivieren dieser Alerts klicken Sie auf Server > Anwendungsserver > Anwendungsserver > Leistung > Konfiguration des Leistungs- und Diagnose-Advisors > Konfiguration von Leistungs- und Diagnoseempfehlungen , und wählen anschließend diese Optionen aus. Diese Alerts zwingen den Verbindungsmanager dazu, die Kennungen im Cache zu verwalten, die Verbindungsbedingungen zu erkennen und Alerts zu senden.
Anmerkung: Damit dieser Alerts aktiviert werden, müssen Sie außerdem die Option Leistungs- und Diagnose-Advisor-Framework (Runtime Performance Advisor) aktivieren in der Anzeige aufrufen, die erscheint, wenn Sie auf Server > Anwendungsserver > Anwendungsserver > Leistung > Konfiguration des Leistungs- und Diagnose-Advisors klicken.
Fehlenden Transaktionskontext protokollieren

Gibt an, ob der Container einen Eintrag in das Aktivitätenprotokoll schreibt, wenn eine Anwendung eine Verbindung ohne Transaktionskontext anfordert. Dies sind Ausnahmen in Bezug auf Verbindungsvoraussetzungen im Java-EE-Programmiermodell ( Java Platform, Enterprise Edition).

Nicht transaktionsorientierte Datenquelle
Gibt an, dass der Anwendungsserver die Verbindungen aus dieser Datenquellen in globalen oder lokalen Transaktionen nicht registriert. Anwendungen müssen explizit "setAutoCommit(false)" in der Verbindung aufrufen, wenn sie eine lokale Transaktion in der Verbindung starten möchten, und sie müssen die von ihnen gestartete Transaktion festschreiben oder rückgängig machen.
Fehler vermeiden: Setzen Sie diese Eigenschaft nur in Ausnahmefällen auf "true". Java Persistence API (JPA) erfordert jedoch JTA- und andere Datenquellen. gotcha
Ausnahmeprüfmodell von WebSphere Application Server verwenden

Gibt an, dass der Anwendungsserver die Fehlerzuordnungsfunktion verwendet, die im Datastore-Helper für die Identifizierung von Fehlern definiert ist. Der Anwendungsserver ersetzt Ausnahmen, die vom JDBC-Treiber ausgelöst werden, nicht durch Ausnahmen, die in der Fehlerzuordnung des Datastore-Helpers definiert sind.

Ausnahmezuordnungsmodell von WebSphere Application Server verwenden

Gibt an, dass der Anwendungsserver die Fehlerzuordnungsfunktion verwendet, die im Datastore-Helper für die die Identifizierung von Fehlern definiert ist, und die Ausnahmen, die vom JDBC-Treiber ausgelöst werden, durch Ausnahmen ersetzt, die in der Fehlerzuordnung des Datastore-Helpers definiert sind.

Unterstützte Konfigurationen: Dieses Fehlererkennungsmodell funktioniert mit JDBC Version 3.0 und früher.sptcfg
Neue Verbindungen validieren

Gibt an, ob der Verbindungsmanager neu erstellte Verbindungen zur Datenbank testet.

Anzahl der Wiederholungen

Gibt an, wie oft versucht werden soll, die einleitende Verbindung zu einer Datenbank herzustellen, wenn die erste Vorabtestoperation scheitert.

Wiederholungsintervall

Wenn Sie Neue Verbindungen validieren auswählen, gibt diese Option an, wie lange (in Sekunden) der Anwendungsserver wartet, bevor er versucht, eine Verbindung zu wiederholen, falls der erste Versuch scheitert.

Vorhandene Verbindungen im Pool validieren

Gibt an, ob der Verbindungsmanager die Gültigkeit von Verbindungen im Pool prüft, bevor er sie an Anwendungen zurückgibt.

Wiederholungsintervall

Wenn Sie Vorhandene Verbindungen im Pool validieren auswählen, gibt diese Option an, wie viel Zeit (in Sekunden) dem JDBC-Treiber für die Validierung einer Verbindung zugestanden wird.

Validierung durch JDBC-Treiber

Gibt an, dass der Anwendungsserver den JDBC-Treiber für die Validierung der Verbindungen verwendet. Der JDBC-Provider muss JDBC 4.0 oder höher unterstützen, um diese Option verwenden zu können.

Zeitlimit
Gibt das Zeitlimit (in Sekunden) für das Testen von Verbindungen (neue oder im Pool des Anwendungsservers) zur Datenbank an. Wenn das Zeitlimit abläuft, bevor die Validierung abgeschlossen ist, wird die Verbindung als nicht verwendbar eingestuft. Wenn Wiederholungen konfiguriert sind, gilt das vollständige Zeitlimit für jede Wiederholung. Der Wert 0 zeigt an, dass der JDBC-Treiber kein Zeitlimit für Validierungsversuche anwendet.
Unterstützte Konfigurationen: Diese Option ist nur für JDBC-Treiber verfügbar, die mit JDBC 4.0 kompatibel sind.sptcfg
Validierung durch SQL-Abfrage (veraltet)

Gibt eine SQL-Anweisung an, die der Anwendungsserver zum Testen der Verbindung an die Datenbank sendet. Verwenden Sie eine Abfrage, die voraussichtlich nur geringe Auswirkungen auf die Leistung hat.

Für Verbindungsmuster "Abrufen/Verwenden/Schließen" mit heterogenem Pooling optimieren

Gibt an, dass der Anwendungsserver das Verbindungsmuster "Abrufen/Verwenden/Schließen" verwendet. Dieses Verbindungsmuster ermöglicht die gemeinsame Nutzung von Verbindungen, die sich in derselben Transaktion befinden, in den Verbindungspools des Anwendungsservers. Dieses Optimierungsmuster lässt zu, dass eine Verbindung in einer Transaktion gemeinsam genutzt werden kann, selbst wenn Verbindungen andere Verbindungseigenschaft verwenden.

Mit dem Feature für heterogene Verbindungspools können Sie die Datenquellendefinition erweitern, um andere angepasste Eigenschaften anzugeben oder Anwendungen das Überschreiben von Datenquelleneigenschaften zu ermöglichen, die keine Basiseigenschaften sind.

Unterstützte Konfigurationen: Dieses Feld ist nur für DB2-Datenquellen verfügbar.sptcfg
Wiederholungsintervall für Clientweiterleitung

Gibt die Zeit (in Sekunden) zwischen den Versuchen einer automatischen Clientweiterleitung an.

Unterstützte Konfigurationen: Dieses Feld ist nur für DB2-Datenquellen verfügbar.sptcfg
Maximale Wiederholungsanzahl für Clientweiterleitung

Gibt die maximale Anzahl an Verbindungswiederholungen an, die die Funktion für automatische Clientweiterleitung verwendet, wenn die einleitende Verbindungsherstellung zum Server scheitert. Diese Eigenschaft wird nur verwendet, wenn das Wiederholungsintervall für Clientweiterleitung definiert ist.

Unterstützte Konfigurationen: Dieses Feld ist nur für DB2-Datenquellen verfügbar.sptcfg
Alternative Servernamen
Gibt die Liste der alternativen Servernamen für den DB2-Server an. Wenn mehrere alternative Servernamen angegeben werden, müssen diese durch Kommas getrennt werden. Beispiel:
host1,host2
Unterstützte Konfigurationen: Dieses Feld ist nur für DB2-Datenquellen verfügbar.sptcfg
Alternative Portnummern
Gibt die Liste der alternativen Serverports für den DB2-Server an. Wenn mehrere alternative Serverports angegeben werden, müssen diese durch Kommas getrennt werden. Beispiel:
5000,50001
Unterstützte Konfigurationen: Dieses Feld ist nur für DB2-Datenquellen verfügbar.sptcfg
JNDI-Name der Serverliste für Clientweiterleitung

Gibt den JNDI-Namen an, der verwendet wird, um die Serverliste für die Weiterleitung von DB2-Clients an den JNDI-Namespace zu binden. Der DB2-Datenbankserver verwendet diesen Namen, um die Liste der alternativen Servernamen zu suchen, wenn keine Informationen zu alternativen Servern im Hauptspeicher vorhanden sind. Diese Option wird für Datenquellen des Typs 2 nicht unterstützt.

Unterstützte Konfigurationen: Dieses Feld ist nur für DB2-Datenquellen verfügbar.sptcfg
Bindung der Liste für Clientweiterleitung zu JNDI aufheben

Wird nur für Testverbindungen verwendet. Wenn Sie diese Einstellung auf "true" setzen, wird die Bindung des JNDI-Namens der Serverliste für Clientweiterleitung zum JNDI-Namespace nach dem Herstellen einer Testverbindung aufgehoben.

Unterstützte Konfigurationen: Dieses Feld ist nur für DB2-Datenquellen verfügbar.sptcfg



Mit (online) gekennzeichnete Links setzen einen Internet-Zugang voraus.

Zugehörige Konzepte
Zugehörige Tasks
Zugehörige Verweise
Einstellungen für angepasste Eigenschaften


Dateiname: udat_jdbcdatasorprops.html