Zum Inhalt springen
_CORE
KI & Agentensysteme Unternehmensinformationssysteme Cloud & Platform Engineering Datenplattform & Integration Sicherheit & Compliance QA, Testing & Observability IoT, Automatisierung & Robotik Mobile & Digitale Produkte Banken & Finanzen Versicherungen Öffentliche Verwaltung Verteidigung & Sicherheit Gesundheitswesen Energie & Versorgung Telko & Medien Industrie & Fertigung Logistik & E-Commerce Retail & Treueprogramme
Referenzen Technologien Blog Know-how Tools
Über uns Zusammenarbeit Karriere
CS EN DE
Lassen Sie uns sprechen

Tomcat und Connection Pooling — häufige Fallstricke vermeiden

16. 08. 2011 Aktualisiert: 24. 03. 2026 1 Min. Lesezeit CORE SYSTEMSdata
Dieser Artikel wurde veröffentlicht im Jahr 2011. Einige Informationen können veraltet sein.
Tomcat und Connection Pooling — häufige Fallstricke vermeiden

Das Erstellen einer JDBC-Verbindung zu einer Datenbank ist eine teure Operation — bei Oracle dauert es 200–500 ms. Ein Connection Pool hält vorab erstellte Verbindungen bereit und recycelt sie. Tomcat JDBC Pool vs. Commons DBCP — wir empfehlen eindeutig den Tomcat Pool.

Sizing

Ein zu kleiner Pool bedeutet wartende Anfragen. Ein zu großer Pool verschwendet Ressourcen auf dem DB-Server. Für 200 gleichzeitige Benutzer: 30–50 Verbindungen. maxActive darf das PROCESSES-Limit in Oracle nicht überschreiten.

Connection-Validierung

testOnBorrow=true mit validationQuery="SELECT 1 FROM DUAL" überprüft jede Verbindung vor der Verwendung. testWhileIdle prüft periodisch idle Verbindungen. Das rettet Sie nach einem Datenbank-Neustart oder Firewall-Timeout.

Vergessene Verbindungen

Ein Connection Leak entsteht, wenn ein Entwickler vergisst, eine Verbindung zu schließen. removeAbandoned=true erkennt automatisch vergessene Verbindungen. logAbandoned=true protokolliert den Stack Trace der Allokationsstelle.

Monitoring

JMX-Statistiken: NumActive, NumIdle, WaitCount. Wenn NumActive dauerhaft nahe an maxActive liegt — gibt es ein Problem.

Regeln

  1. Immer einen Pool verwenden, niemals DriverManager.getConnection() in Produktion. 2. Validation Queries verwenden. 3. removeAbandoned aktivieren. 4. JMX-Monitoring einrichten. 5. Failover testen.
tomcatjdbcconnection pooljava
Teilen:

CORE SYSTEMS

Wir bauen Kernsysteme und KI-Agenten, die den Betrieb am Laufen halten. 15 Jahre Erfahrung mit Enterprise-IT.

Brauchen Sie Hilfe bei der Implementierung?

Unsere Experten helfen Ihnen bei Design, Implementierung und Betrieb. Von der Architektur bis zur Produktion.

Kontaktieren Sie uns
Brauchen Sie Hilfe bei der Implementierung? Termin vereinbaren