So erstellen Sie einen JDBC-Verbindungspool

Wenn Sie den Pool mit der Administration Console erstellen, definieren Sie die Eigenschaften einer Verbindung mit einer spezifischen Datenbank.

Bevor Sie beginnen

Wenn Sie einen Verbindungspool erstellen möchten, müssen Sie zunächst einen die JDBC-API unterstützenden Treiber (JDBC-Treiber) installieren und integrieren. Siehe auch So integrieren Sie einen JDBC-Treiber.

Zum Erstellen eines JDBC-Verbindungspools sind folgende Informationen erforderlich. Sammeln Sie diese Informationen, bevor Sie fortfahren:

  1. Wählen Sie in der Navigationsstruktur den Knoten "Allgemeine Aufgaben".
  2. Klicken Sie auf der Seite "Allgemeine Aufgaben" auf die Schaltfläche "Neuen JDBC-Verbindungspool erstellen".

    Die Seite "Neuer JDBC-Verbindungspool (Schritt 1 von 2)" wird geöffnet.


    Hinweis – Sie können auch auf die Seite "JDBC-Verbindungspool" zugreifen, indem Sie die Knoten "Ressourcen" und "JDBC" erweitern und anschließend den Knoten "Verbindungspools" auswählen. Wählen Sie anschließend auf der Seite "Neuer Verbindungspool" die Option "Neu", um einen neuen Verbindungspool zu erstellen.


  3. Geben Sie in das Feld "Name" einen Namen für den neuen Verbindungspool ein.

    Dies ist ein erforderliches Feld.

  4. Wählen Sie aus der Dropdown-Liste "Ressourcentyp" einen Ressourcentyp aus.

    Zur Auswahl stehen javax.sql.XADataSource (globale Transaktionen), java.sql.ConnectionPoolDataSource (lokale Transaktionen, mögliche Leistungsverbesserung) und javax.sql.DataSource (nur lokale Transaktionen).

  5. Wählen Sie aus der Dropdown-Liste "Datenbankhersteller" einen Datenbankhersteller aus.
  6. Klicken Sie auf "Weiter".

    Die Seite "Neuer JDBC-Verbindungspool (Schritt 2 von 2)" wird geöffnet.

  7. Geben Sie im Feld "Klassenname der Datenquelle" den Namen der herstellerspezifischen Klasse ein, welche die "DataSource"- und/oder "XADataSource"-APIs implementiert.
  8. Geben Sie im Feld "Beschreibung" eine kurze Beschreibung für den Verbindungspool ein.
  9. Geben Sie im Feld "Ursprüngliche und minimale Poolgröße" die Mindestanzahl von Verbindungen für diesen Pool an.

    Dieser Wert legt auch die Anzahl an Verbindungen fest, die im Pool platziert werden, wenn der Pool erstellt bzw. der Anwendungsserver gestartet wird. Der Standardwert ist 8.

  10. Geben Sie im Feld "Maximale Poolgröße" die maximale Anzahl der Verbindungen für diesen Pool an.

    Der Standardwert lautet 32.

  11. Geben Sie im Feld "Umfang der Größenänderungen des Pools" die Anzahl der Verbindungen pro Größenänderung des Pools ein.

    Wenn die Poolgröße nach oben oder unten skaliert wird, erfolgt die Anpassung in Schritten. Dieser Wert legt die Anzahl an Verbindungen im Stapel fest. Wenn dieser Wert zu hoch eingestellt ist, entstehen Verzögerungen beim Erstellen von Verbindungen und beim Verbindungswiederaufbau, ist der Wert zu niedrig eingestellt, wird die Effizienz beeinträchtigt. Der Vorgabewert ist 2.

  12. Geben Sie im Feld "Leerlaufzeitlimit" die maximale Dauer (in Sekunden) an, die eine Verbindung im Pool im Leerlauf bleiben kann.

    Nach Ablauf dieser Zeitspanne wird die Verbindung aus dem Pool entfernt. Der Standardwert ist 30.

  13. Geben Sie im Feld "Maximale Wartezeit" die maximale Wartezeit (in Millisekunden) an, während der die eine Verbindung anfordernde Anwendung wartet, bevor sie eine Zeitüberschreitung erreicht hat.

    Der Standardwert ist 60.000.

  14. Aktivieren Sie das Kontrollkästchen "Verbindungsüberprüfung erforderlich", um die Verbindungsüberprüfung zu aktivieren.

    Die Verbindungsüberprüfung ermöglicht dem Server bei Ausfall einen erneuten Verbindungsaufbau.

  15. Wählen Sie aus der Dropdown-Liste "Überprüfungsmethode" eine Überprüfungsmethode aus.

    Der Anwendungsserver kann Datenbankverbindungen auf drei Arten überprüfen: auto-commit, metadata und table.

    Auto-commit und Metadaten

    Der Anwendungsserver überprüft eine Verbindung durch Abrufen der Methoden con.getAutoCommit und con.getMetaData.


    Hinweis – Viele JDBC-Treiber zwischenspeichern die Ergebnisse dieser Aufrufe. Folglich führen diese Aufrufe nicht immer zu verlässlichen Überprüfungen. Informieren Sie sich beim Treiberhersteller, ob diese Aufrufe zwischengespeichert werden oder nicht.


    Tabelle

    Die Anwendung fragt die angegebene Datenbanktabelle ab. Die Tabelle muss bereits 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.

  16. Wenn Sie in der Dropdown-Liste "Überprüfungsmethode" "Tabelle" ausgewählt haben, dann geben Sie den Namen der Datenbanktabelle in das Feld "Tabellenname" ein.

    Der Tabellenname darf ausschließlich alphanumerische Zeichen, Unterstriche, Bindestriche oder Punkte enthalten.

  17. Aktivieren Sie das Kontrollkästchen "Alle Verbindungen bei sämtlichen Fehlern beenden", damit der Server alle Verbindungen im Pool beendet und diese bei Verbindungsabbruch wiederherstellt.

    Wenn dieses Kontrollkästchen deaktiviert wird, werden einzelne Verbindungen nur bei Verwendung wiederhergestellt.

  18. Aktivieren Sie das Kontrollkästchen "Nicht-Komponenten-Aufrufer zulassen", damit der Pool von Nicht-Komponenten-Aufrufern verwendet werden kann.

    Beispiele für Nicht-Komponenten-Aufrufer sind Servlet-Filter und Lebenszyklusmodule.

  19. Aktivieren Sie das Kontrollkästchen "Nicht transaktionsbezogene Verbindungen", um nicht transaktionsbezogene Verbindungen zurückzugeben.
  20. Wählen Sie in der Dropdown-Liste "Transaktionsisolationsgrad" einen Transaktionsisolationsgrad für diesen Verbindungspool aus.

    Sofern nicht angegeben, verwendet der Pool den vom JDBC-Treiber festgelegten Standardisolationsgrad.

  21. Das Kontrollkästchen "Isolationsgrad garantiert" ist nur dann verfügbar, wenn ein Transaktionsisolationsgrad in Schritt 20 festgelegt wurde.

    Wenn Sie das Kontrollkästchen "Garantiert" aktivieren, gilt für alle Verbindungen aus dem Pool dieselbe Isolationsebene. Wenn beispielsweise die Isolationsebene für die Verbindung nach der letzten Verwendung programmatisch (über con.setTransactionIsolation ) geändert wird, wird der Status auf die angegebene Isolationsebene zurückgesetzt.

  22. (Optional) Geben Sie im Abschnitt "Weitere Eigenschaften" weitere Eigenschaften an.

    Zu erforderlichen Eigenschaften gehören zum Beispiel Datenbankname (URL), Benutzername und Passwort. Da die Eigenschaften je nach Datenbankhersteller variieren, sollten Sie die Herstellerdokumentation zu Rate ziehen.

  23. Klicken Sie auf "Fertig stellen".
Siehe auch