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 1 Min. Lesezeit CORE SYSTEMSdata
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