ConnectionPool
ab FirstSpirit Version 5.2R5
Unter diesem Eintrag werden Informationen zu den angebundenen Datenbanken dargestellt. Die Anzeige ist dynamisch. Das heißt, der Eintrag wird erst dann in der JMX-Konsole geladen, wenn das entsprechende Projekt (das die Datenbankverbindung verwendet) von mindestens einem Benutzer geöffnet wurde. Die Informationen werden dann dynamisch zur Laufzeit aktualisiert. Dabei besitzt jedes Projekt und jede Datenbankverbindung ein eigenes MBean, das unterhalb des Ordners „ConnectionPool“ angezeigt wird.
Attribute
ConnectionRetryCount: Anzahl der Verbindungsversuche zur Datenbank. Beim Ausführen einer SQL-Abfrage versucht FirstSpirit eine Verbindung aus dem Connection-Pool zu benutzen. Falls keine freien Verbindungen vorhanden sind, wird versucht eine neue Verbindung zur Datenbank aufzubauen. Dabei können Anfragen abgewiesen werden (z. B. aufgrund der Datenbank-Konfiguration).
ConnectionRetryCycleMillis:: Nach einem fehlgeschlagenen Versuch, eine Verbindung zur Datenbank aufzubauen, wartet der ORMapper die in ConnectionRetryCycleMillis angegebene Zeit (in Millisekunden), bevor er einen neuen Versuch startet.
ConnectionTimeoutMillis: Definiert das Zeitintervall (in Millisekunden), nachdem eine freie Verbindung aus dem Connection-Pool vom FirstSpirit-Server als veraltet betrachtet und geschlossen wird. Bei einem Wert von null oder kleiner ist der Timeout deaktiviert.
DatabaseUrl: Enthält die Angabe des JDBC-URL zu einem Datenbank-Server und einer dort vorhandenen Datenbank, beispielsweise:
jdbc:mysql://localhost:3306/dbname
Das Aussehen der JDBC-Connection-URLs ist datenbankabhängig und muss der jeweiligen Dokumentation zur Datenbank entnommen werden.
Driver: Enthält den vollständigen Klassennamen des verwendeten JDBC-Treibers.
FetchConnectionTimeoutMillis: Definiert das Zeitintervall (in Millisekunden), die beim Zugriff auf die Datenbank auf eine freie Verbindung aus dem Connection-Pool gewartet wird.
IsolationLevel: Transaktions-Isolationslevel für die JDBC-Datenbankverbindung. Gültige Werte können der Java-Dokumentation entnommen werden Die Isolationslevel sind datenbankabhängig. Im Einzelfall sollte die Dokumentation der entsprechenden Datenbank zu Rate gezogen werden.
MaxConnections: Maximale Anzahl der parallel geöffneten Verbindungen zur Datenbank pro Connection-Pool.
MinConnections: Anzahl der garantiert vorgehaltenen Verbindungen zur Datenbank pro Connection-Pool.
OpenConnections: Aktuelle Anzahl der geöffneten Verbindungen zur Datenbank pro Connection-Pool.
PoolCheckIntervalMillis: Definiert die Wartezeit (in Millisekunden) zwischen zwei Prüfungen aller geöffneten Verbindungen des Connection-Pool.
PoolSize: Größe des Connections-Pools. Dieser Wert entspricht immer der Anzahl der maxConnections (siehe oben).
PoolTimeoutMillis: Definiert das Zeitintervall (in Millisekunden), die der FirstSpirit-Server eine Verbindung aus dem Connection-Pool nutzen kann. Falls er die Verbindung nach Ablauf dieser Zeit nicht freigegeben hat, wird sie automatisch geschlossen.
UsedConnections: Aktuelle Anzahl der geöffneten und verwendeten Verbindungen zur Datenbank.
Operations
void flushConnections(): Beim Ausführen dieser Methode werden alle ungenutzten Verbindungen im Connection-Pool geschlossen. Anschließend werden gegebenenfalls neue Verbindungen aufgebaut, um die Anforderung in MinConnections zu erfüllen.