Blenden Sie in der Navigationsbaumstruktur den Knoten "Ressourcen" ein.
Wählen Sie unter dem Ressourcenknoten den JDBC-Knoten.
Wählen Sie unter dem JDBC-Knoten den Knoten "Connection-Pools".
Die Seite "Connection-Pools" wird geöffnet.
Klicken Sie auf der Seite "Connection-Pools" auf den Namen des zu bearbeitenden Pools.
Die Seite "Connection-Pool bearbeiten" wird geöffnet.
Klicken Sie auf der Seite "Connection-Pool bearbeiten" auf die Registerkarte "Erweitert".
Die Seite "Erweiterte Attribute des Connection-Pools bearbeiten" wird geöffnet.
Geben Sie im Feld "Timeout bei Anweisung" die Dauer (in Sekunden) an, nach der anormal lang dauernde Abfragen beendet werden.
GlassFish Server legt für die erstellten Anweisungen QueryTimeout
fest. Legen Sie den Wert auf -1 fest, um diese Option zu deaktivieren. Der Standardwert ist -1.
Geben Sie im Feld "Größe des Anweisungscache" die Anzahl der Anweisungen ein, die mit dem LRU-Caching-Mechanismus (Least Recently Used, Zuletzt verwendet) gecacht werden sollen.
Zum Deaktivieren des Anweisungs-Cachings geben Sie den Wert 0 an. Der Standardwert ist 0.
Geben Sie im Feld "Init SQL" eine SQL-Zeichenfolge ein, die jedes Mal ausgeführt werden soll, wenn eine Verbindung im Pool erstellt (nicht wiederverwendet) wird.
Bei Ausführung dieser Zeichenfolge wird der Status der Verbindung initialisiert.
Geben Sie im Feld "SQL-Trace-Listener" eine durch Komma getrennte Liste mit Namen von Listener-Implementierungsklassen ein, um anzugeben, dass von Anwendungen ausgeführte SQL-Anweisungen verfolgt werden.
Die Listener-Klassen müssen die org.glassfish.api.jdbc.SQLTraceListener
-Schnittstelle implementieren. Die Verwendung von Listenern ermöglicht die problemlose Filterung von Logmeldungen für die SQL-Anweisungen und unterstützt Administratoren bei der Analyse der Anweisungen.
Aktivieren Sie das Kontrollkästchen "JDBC-Objekte umbrechen", sodass die Anwendungen umbrochene JDBC-Objekte für Statement
, PreparedStatement
, CallableStatement
, ResultSet
, DatabaseMetaData
erhalten.
Diese Option ist standardmäßig aktiviert.
Aktivieren Sie das Kontrollkästchen "Pooling", um das Connection Pooling für den Pool zu aktivieren.
Diese Option ist standardmäßig aktiviert.
Geben Sie in das Feld "Höchstens einmal überprüfen" die Dauer (in Sekunden) ein, nach der eine Verbindung höchstens einmal überprüft wird.
Wenn Sie dieses Attribut auf einen angemessenen Wert setzen, wird die Anzahl der von einer Verbindung ausgegebenen Validierungsanforderungen minimiert. Der Standardwert ist 0, d.h. das Attribut ist nicht aktiviert.
Geben Sie in das Feld "Verbindungslecktimeout" die Dauer (in Sekunden) ein, die zum Tracing von Verbindungslecks in einem Connection-Pool erforderlich ist.
Mit diesem Feld können Sie potenzielle, durch die Anwendung verursachte Verbindungslecks ermitteln. Eine Verbindung, die von der Anwendung nicht innerhalb des angegebenen Zeitraums an den Pool zurückgegeben wird, wird als potenzielles Leck betrachtet, und ein Stacktrace des aufrufenden Programms wird protokolliert. Setzen Sie den Wert auf 0, um das Tracing von Verbindungslecks zu deaktivieren. Der Standardwert ist 0.
Verwenden Sie dieses Feld zusammen mit "Verbindungsleck zurückfordern", um potenzielle, durch die Anwendung verursachte Verbindungslecks zu verhindern.
Aktivieren Sie das Kontrollkästchen "Verbindungsleck zurückfordern", um Verbindungen mit Lecks im Pool wiederherzustellen, wenn das Tracing von Verbindungslecks abgeschlossen ist.
Diese Option ist standardmäßig deaktiviert.
Geben Sie in das Feld "Anweisungslecktimeout" die Dauer (in Sekunden) ein, die zum Tracing von Anweisungslecks in einem Connection-Pool erforderlich ist.
Mit diesem Feld können Sie potenzielle, durch die Anwendung verursachte Anweisungslecks ermitteln. Eine Anweisung, die von der Anwendung nicht innerhalb des angegebenen Zeitraums an den Pool zurückgegeben wird, wird als potenzielles Leck betrachtet, und ein Stacktrace des aufrufenden Programms wird protokolliert. Setzen Sie den Wert auf 0, um das Tracing von Anweisungslecks zu deaktivieren. Der Standardwert ist 0.
Verwenden Sie dieses Feld zusammen mit "Anweisungsleck zurückfordern", um potenzielle, durch die Anwendung verursachte Anweisungslecks zu verhindern.
Aktivieren Sie das Kontrollkästchen "Anweisungsleck zurückfordern", um Anweisungen mit Lecks im Pool wiederherzustellen, wenn das Tracing von Anweisungslecks abgeschlossen ist.
Diese Option ist standardmäßig deaktiviert.
Geben Sie in das Feld "Erstellungswiederholungsversuche" die Anzahl der Versuche ein, die bei Fehlern zum Herstellen einer Verbindung unternommen werden.
Setzen Sie den Wert auf 0, wenn keine Versuche zur erneuten Herstellung der Verbindung unternommen werden sollen. Der Standardwert ist 0.
Geben Sie in das Feld "Wiederholungsintervall" das Intervall in Sekunden zwischen zwei Verbindungsversuchen ein.
Der Standardwert ist 10. Dieses Attribut wird nur verwendet, wenn der Wert von "Erstellungswiederholungsversuche" größer als 0 ist.
Aktivieren Sie das Kontrollkästchen "Verzögerte Verknüpfung", um eine physische Verbindung nur dann mit einer logischen Verbindung zu verknüpfen, wenn die Verbindung verwendet wird.
Die Verknüpfung wird wieder aufgehoben, wenn die Transaktion abgeschlossen ist und eine Komponentenmethode beendet wird. Auf diese Weise wird die Wiederverwendung der physischen Verbindungen gefördert. Bei deaktivierter Option wird eine physische Verbindung auch vor ihrer Verwendung mit einer logischen Verbindung verknüpft. Diese Option ist standardmäßig deaktiviert.
Aktivieren Sie das Kontrollkästchen "Eintragung verzögerter Verbindungen aktiviert", um eine Ressource für die Transaktion nur dann einzutragen, wenn sie tatsächlich in einer Methode verwendet wird.
Diese Option ist standardmäßig deaktiviert.
Aktivieren Sie das Kontrollkästchen "Mit Thread verknüpfen", um Verknüpfungen zwischen Verbindungen und Threads zu erstellen.
Wenn derselbe Thread eine weitere Verbindung benötigt, kann er die bereits mit diesem Thread verknüpfte Verbindung wiederverwenden, wodurch die zusätzliche Belastung durch das Abrufen einer weiteren Verbindung aus dem Pool vermieden wird. Diese Option ist standardmäßig deaktiviert.
Aktivieren Sie das Kontrollkästchen "Verbindungen abgleichen", um den Verbindungsabgleich für den Pool zu aktivieren.
Bei aktivierter Option muss eine aus dem Pool ausgewählte Verbindung mit den Verbindungen abgeglichen werden, die bestimmte Zugangsdaten aufweisen. Diese Option muss aktiviert werden, wenn der Connection-Pool von Anwendungen verwendet wird, die über mehrere Benutzerzugangsdaten verfügen. Diese Option kann deaktiviert werden, wenn der Administrator weiß, dass die Verbindungen im Pool immer homogen sind und eine aus dem Pool abgerufene Verbindung nicht mit dem Ressourcenadapter abgeglichen werden muss. Diese Option ist standardmäßig deaktiviert.
Geben Sie in das Feld "Maximale Verbindungsnutzung" einen Wert dafür ein, wie oft eine Verbindung durch den Pool wiederverwendet werden soll.
Nachdem eine Verbindung so häufig wie angegeben wiederverwendet wurde, wird sie geschlossen. Indem Sie die Anzahl der Wiederverwendungen einer Verbindung beschränken, können Sie Anweisungslecks vermeiden, falls eine Anwendung Anweisungen nicht schließt. Setzen Sie den Wert auf 0, um dieses Attribut zu deaktivieren. Der Standardwert ist 0.
Aktivieren Sie das Kontrollkästchen "Verbindungsüberprüfung erforderlich", um die Verbindungsüberprüfung zu aktivieren.
Die Verbindungsvalidierung ermöglicht dem Server bei Ausfall einen erneuten Verbindungsaufbau.
Wählen Sie aus der Dropdown-Liste "Validierungsmethode" eine Validierungsmethode.
GlassFish Server kann Datenbankverbindungen auf folgende Weise validieren.
auto-commit
und metadata
GlassFish Server validiert eine Verbindung durch Aufruf der Methoden con.getAutoCommit
und con.getMetaData
.
Hinweis:
Viele JDBC-Treiber cachen die Ergebnisse dieser Aufrufe. Folglich führen diese Aufrufe nicht immer zu verlässlichen Validierungen. Informieren Sie sich beim Treiberhersteller, ob diese Aufrufe gecacht werden oder nicht.custom-validation
GlassFish Server verwendet einen benutzerdefinierten Validierungsmechanismus, der durch die benutzerdefinierte Implementierungsklasse im Feld "Validierungsklassenname" angegeben wird.
table
Die Anwendung fragt die angegebene Datenbanktabelle ab. Die Tabelle muss vorhanden und zugänglich sein, sie muss aber keine Zeilen enthalten. Sie sollten keine bereits vorhandene Tabelle mit einer großen Anzahl Zeilen oder eine Tabelle verwenden, auf die häufig zugegriffen wird.
Wenn Sie in der Dropdown-Liste "Validierungsmethode" den Eintrag table
ausgewählt haben, geben Sie den Namen der Datenbanktabelle ein oder wählen ihn aus der Dropdown-Liste "Tabellenname".
Wenn Sie in der Dropdown-Liste "Validierungsmethode" den Eintrag custom-validation
ausgewählt haben, geben Sie den Namen der benutzerdefinierten Validierungsimplementierungsklasse ein oder wählen ihn aus der Dropdown-Liste "Validierungsklassenname".
Der angegebene Klassenname muss für GlassFish Server zugänglich sein. Die angegebene Klasse muss die org.glassfish.api.jdbc.ConnectionValidation
-Schnittstelle implementieren.
Aktivieren Sie das Kontrollkästchen "Bei Fehlern sämtliche Verbindungen trennen", sodass der Server beim Ausfall einer einzelnen Verbindung alle Verbindungen im Pool schließt und wiederherstellt.
Bei deaktivierter Option werden einzelne Verbindungen nur bei Verwendung wiederhergestellt. Diese Option ist standardmäßig deaktiviert.
Aktivieren Sie das Kontrollkästchen "Nicht-Komponenten-Aufrufer zulassen", damit der Pool durch Aufrufe von Nicht-Komponenten, wie z B. Servlet-Filter und Persistence Manager von Drittprovidern, verwendet werden kann.
Verbindungen, die durch Aufrufe von Nicht-Komponenten hergestellt werden, werden am Ende einer Transaktion nicht automatisch vom Container geschlossen. Sie müssen explizit vom aufrufenden Programm geschlossen werden. Diese Option ist standardmäßig deaktiviert.
Klicken Sie auf der Registerkarte "Allgemein" auf die Schaltfläche "Leeren", um alle Verbindungen aus dem Pool zu löschen.
Wenn Sie auf die Schaltfläche "Leeren" klicken, werden alle bestehenden Verbindungen gelöscht, für den Pool eingerichtete Verbindungen werden neu erstellt, und die anfängliche, minimale Poolgröße wird wiederhergestellt.
Klicken Sie auf "Speichern".
Tipp:
Um zu den Standardeinstellungen zurückzukehren, klicken Sie auf die Schaltfläche "Standardwerte laden" und anschließend auf "Speichern".