Verbindungspooling kann die Performance von Anwendungen verbessern, die viele kurze Verbindungen zum Datenbankserver herstellen. Wenn Verbindungspooling für eine Verbindung aktiviert ist, wird sie bei der Trennung automatisch im Cache zwischengespeichert und kann wieder verwendet werden, wenn die Anwendung erneut eine Verbindung herstellt. Verbindungspooling wird mit dem Verbindungsparameter ConnectionPool (CPOOL) gesteuert. Wenn eine Anwendung eine bestimmte Anzahl von Verbindungen mit derselben Verbindungszeichenfolge erstellt, wird die Verbindung gepoolt.
Eine Anwendung muss fünf Verbindungen mit derselben Verbindungszeichenfolge herstellen, bevor eine Verbindung im Cache zwischengespeichert wird. Der Verbindungsname kann jedes Mal eindeutig sein, alle anderen Verbindungsparameter müssen jedoch identisch sein, damit eine im Cache zwischengespeicherte Verbindung wieder verwendet werden kann.
Wenn der Anwendungsprozess erneut eine Verbindung herstellt und im Cache zwischengespeicherte Verbindungen für dieselbe Verbindungszeichenfolge verfügbar sind, wird die Verbindung im Cache wieder verwendet. Verbindungen bleiben für den im Verbindungsparameter ConnectionPool (CPOOL) angegebenen Zeitraum (standardmäßig 60 Sekunden) im Cache.
Im Cache zwischengespeicherte Verbindungen werden nicht wieder verwendet, wenn dies das Verhalten der Anwendung ändern würde. Zum Beispiel verwenden im Cache zwischengespeicherte Verbindungen Datenbanken nicht wieder, die automatisch gestoppt werden, wenn keine Verbindungen zu ihnen vorhanden sind oder Verbindungen bei Erreichen des Verbindungsgrenzwerts oder bei Kennwortänderungen deaktiviert werden.
Um sicherzustellen, dass die Verbindungspoolfunktion für die Anwendung eindeutig erkennbar ist, wird eine Verbindung getrennt, wenn beim Zwischenspeichern der Verbindung im Cache ein Fehler auftritt. Wenn beim Versuch, eine Verbindung im Cache wieder zu verwenden, ein Fehler auftritt, versucht der Datenbankserver auf die übliche Art und Weise eine Verbindung herzustellen.
Eine Verbindung wird im Cache zwischengespeichert, wenn sie getrennt wird und die durch den Verbindungsparameter CPOOL angegebene maximale Anzahl von Verbindungen noch nicht erreicht ist. Die Verbindung wird erneut initialisiert und die Verbindung im Cache bleibt mit dem Datenbankserver bestehen, selbst wenn die Anwendung diese getrennt hat. Das Bereinigen und Reinitialisieren einer Verbindung umfasst die folgenden Aktivitäten:
Alle ausstehenden Transaktionen werden zurückgesetzt.
Temporäre Tabellen, temporäre Funktionen und Variablen werden gelöscht.
Verbindungsoptionen und Verbindungszähler werden zurück- bzw. auf Null gesetzt.
Die Zähler für die Datenbankserververbindung werden erhöht bzw. verringert. Sie werden nicht über vorhandene aktive Verbindungen informiert, wenn ein Datenbankserver mit im Cache zwischengespeicherten Verbindungen heruntergefahren wird.
Es werden alle definierten Trenn- und Verbindungsereignisse ausgeführt.
Die Datenbankoption login_procedure wird ausgeführt und die Login-Richtlinie überprüft.
Die Verbindungs-ID wird zurückgesetzt.
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |