Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 (Deutsch) » SQL Anywhere Server - Datenbankadministration » Datenbank starten und Verbindung mit ihr herstellen » SQL Anywhere-Datenbankverbindungen

 

Verbindungspooling

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 werden im Cache zwischengespeicherte Verbindungen nicht wiederverwendet:

  • Bei Datenbanken, die automatisch stoppen, wenn keine Verbindungen zu ihnen vorhanden sind.

  • Wenn Verbindungen deaktiviert sind.

  • Wenn der Datenbankserver seine Verbindungsobergrenze erreicht hat.

  • Wenn ein Kennwort geändert wurde.

Um sicherzustellen, dass die Verbindungspoolfunktion für die Anwendung eindeutig erkennbar ist, wird eine Verbindung getrennt, wenn beim Caching 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.

 Verwenden von SQL Anywhere-Verbindungspools mit anderen Verbindungspooling-Produkten
 Verbindungspooling und Scale-Out mit Schreibschutz
 Siehe auch