Connection Pool

Unter einem Connection Pool versteht man in der Softwaretechnik einen Pool von bestehenden Datenbankverbindungen, der für Anfragen verwendet wird.

Da die Einrichtung einer neuen Verbindung zur Datenbank Zeit kostet und Rechnerressourcen bindet (z. B. im Rahmen einer Webanwendung), wird nicht für jede Anfrage eine neue Verbindung erstellt. Stattdessen wird eine Verbindung aus dem Connection Pool verwendet. Connection Pools verbessern so die Geschwindigkeit der Ausführung und reduzieren den Ressourcenverbrauch.

Bei einer Webanwendung wird der „Connection Pool“ in der Regel durch den Application Server verwaltet. Falls die Applikation eine Verbindung zur Datenbank öffnen möchte, gibt im Hintergrund der Application Server eine Verbindung aus dem Pool zur Anwendung. Schließt die Applikation die Verbindung, dann wird diese vom Application Server zurück in den Pool gelegt.

Connection Pooling mittels entsprechenden Programmbibliotheken ist grundsätzlich mit jeder Datenbank möglich, zu der Verbindungen möglich sind. Manche Hersteller bieten in ihren Aufrufer-seitigen Datenbankschnittstellen Unterstützung für Connection Pooling an, darunter Oracle.[1]

Einzelnachweise

  1. OCI Driver Connection Pooling