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.
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.
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]](../dist.gif)
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 von Iterationen und eine Gruppe von Standardkonfigurationseinstellungen. 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. Es kann sein, dass dieser Optimierungsprozess aufgrund von Ressourceneinschränkungen nicht immer möglich ist.
| Information | Wert |
|---|---|
| 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. |
Wenn diese Option ausgewählt ist, wird die folgende Warnung in das Systemausgabeprotokoll von WebSphere Application Server eingetragen, wenn mehrere Threads gleichzeitig versuchen, dieselbe Verbindungskennung zu verwenden. Sie können diese Eigenschaft verwenden, um Verbindungsprobleme zu beheben, wenn Sie der Meinung sind, dass die Probleme darauf zurückzuführen sind, dass mehrere Threads gleichzeitig versuchen, dieselbe Verbindungskennung zu verwenden. Wenn mehrere Threads gleichzeitig versuchen, dieselbe Verbindungskennung zu verwenden, ist dies ein Verstoß gegen das Programmiermodell.
J2CA0167W: Es wurde versucht, eine Verbindungskennung in mehreren Threads zu verwenden. Die Verbindungskennung ist {0}.
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".
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.gotchaWenn Sie diese Option auswählen, verwendet der Anwendungsserver Java Message Service (JMS), um optimierte Verbindungen von dieser Datenquelle abzurufen. Diese Eigenschaft verhindert, dass JDBC-Anwendungen (Java Database Connectivity) Verbindungen mit CMP-Anwendungen (Container-Managed Persistence, über Container realisierte Transaktionspersistenz) gemeinsam nutzen. Diese Option ist nicht verfügbar, wenn der JDBC-Provider der Datenquelle ein XA-Provider ist.
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 die Eigenschaft verwenden, um Verbindungsprobleme zu untersuchen, aber die Überwachung von Kennungen kann zur Laufzeit zu erheblichen Leistungsproblemen führen.
AdminConfig.modify(myDataSourceVariable, '[[manageCachedHandles "true"]]')
Gibt an, ob der Container eine Eingabe für das Aktivitätenprotokoll absetzt, wenn eine Anwendung eine Verbindung ohne Transaktionskontext anfordert. Dies sind Ausnahmen in Bezug auf Verbindungsvoraussetzungen im Java-EE-Programmiermodell (Java Platform, Enterprise Edition).
Fehler vermeiden: Setzen Sie diese
Eigenschaft nur in Ausnahmefällen auf true, wenn eine JPA-Anwendung (Java Persistence
API) sowohl JTA-Datenquellen als auch andere Datenquellen erfordert.
Die Datenquelle, die keine JTA-Datenquelle ist, setzt voraus, dass diese Eigenschaft den Wert true hat.gotchaGibt 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.
Gibt an, dass der Anwendungsserver die Fehlerzuordnungsfunktion verwendet, die im Datastore-Helper für 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.
Gibt an, dass der Verbindungsmanager neu erstellte Verbindungen zur Datenbank testet.
Gibt an, wie oft versucht werden soll, die einleitende Verbindung zu einer Datenbank herzustellen, wenn die erste Vorabtestoperation scheitert.
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.
Gibt an, dass der Verbindungsmanager die Gültigkeit von Verbindungen im Pool testet, bevor er sie an Anwendungen zurückgibt.
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.
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. Diese Option ist nur verfügbar, wenn Neue Verbindungen validieren oder Vorhandene Verbindungen im Pool validieren ausgewählt ist.
Fehler vermeiden: Für eine Oracle-Datenquelle wird die Option Validierung nach JDBC-Treiber in der Administrationskonsole erst angezeigt, nachdem die Eigenschaft "validateNewConnectionTimeout" den
angepassten Eigenschaften der Datenquelle
hinzugefügt wurde. Die Eigenschaft "validateNewConnectionTimeout" wird für die Validierung
des Treibers für JDBC 4.0 verwendet und kann über die Administrationskonsole verwendet werden.gotchaGibt 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. Diese Option ist nur verfügbar, wenn Neue Verbindungen validieren oder Vorhandene Verbindungen im Pool validieren ausgewählt ist.
Optimiert die Datenquelle für Anwendungen, die das Beispiel "Verbindung abrufen/Verbindung verwenden/Verbindung schließen" verwenden. Diese Optimierung ermöglicht dem Verbindungspool für die Datenquelle die gemeinsame Nutzung von Verbindungen, die sich in derselben Transaktion befinden. Mit diesem Optimierungsmuster können Sie eine Verbindung während einer Transaktion gemeinsam nutzen, und zwar auch dann, wenn Verbindungen unterschiedliche Verbindungseigenschaften verwenden.
Mit dem Feature für heterogene Verbindungspools müssen Sie zuerst die Datenquellendefinition erweitern, um andere angepasste Eigenschaften anzugeben oder Anwendungen das Überschreiben von Datenquelleneigenschaften zu ermöglichen, die keine Basiseigenschaften sind. Weitere Informationen zum Erweitern von Datenquellen finden Sie in den Informationen zum Erweitern von DB2-Datenquellendefinitionen auf Anwendungsebene.
Gibt die Zeit (in Sekunden) zwischen den Versuchen einer automatischen Clientweiterleitung an.
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.
host1,host2
5000,50001
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.
Wird nur zum Testen von Verbindungen 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.