Vorzüge des Verbindungspoolings unter .NET

Verbindungspooling ist voreingestellt. Die Voreinstellung kann mittels der Pooling-Einstellung im Verbindungsstring geändert werden. Der folgende Verbindungsstring für SQL Server verwendet kein Verbindungspooling:


Derselbe Ansatz kann auch bei anderen .NET-Datenanbietern verwendet werden. Die Pooling-Einstellung wird freigegeben, indem sie auf „True“ gesetzt wird (oder indem man die Pooling-Variable entfernt, sodass die Voreinstellung wieder greift). Die voreingestellte Größe des Verbindungspools liegt bei 100, kann aber ebenfalls mit allgemeinen Stringvariablen angepasst werden. Die folgenden Variablen können zur Bestimmung der minimalen und der maximalen Größe des Pools und der Transaktionsunterstützung genutzt werden:

  • Max Pool Size: Die maximale Anzahl an Verbindungen, die im Pool erlaubt ist. Die voreingestellte Anzahl ist 100.
  • Min Pool Size: Die Mindestanzahl an Verbindungen, die im Pool erlaubt ist. Die voreingestellte Anzahl ist null.
  • Enlist: Signalisiert, ob der Pooler die Verbindung automatisch im aktuellen Transaktionskontext des Erstellungsthreads auflistet.

    Der folgende Verbindungsstring für SQL Server setzt Verbindungspooling mit einer minimalen Verbindungsanzahl von 5 und einer maximalen Verbindungsanzahl von 100 ein:


    Man sollte sich an den Unterlagen des jeweiligen Anbieters orientieren, wenn ein anderer .NET-Datenanbieter als SQL Server verwendet wird. Andere Datenanbieter haben möglicherweise mehr Pooling-Optionen. Ein gutes Beispiel hierfür ist der Oracle Data Provider, der zwei Optionen anbietet – Decr Pool Size und Incr Pool Size – mit denen man bestimmt, wie ein Verbindungspool schrumpft oder anwächst.

    In den Unterlagen von Microsoft ist zu lesen, dass der Verbindungspooler Verbindungsanforderungen nachkommt, indem er Verbindungen, die für den Pool wieder verfügbar gemacht wurden, neu zuweist. Wenn die maximale Größe des Pools erreicht und keine verwendbare Verbindung verfügbar ist, wird die Anforderung in eine Warteschleife gestellt. Der Pooler versucht dann, eine Verbindung zu reklamieren, bis das Zeitlimit erreicht ist (voreingestellt sind 15 Sekunden). Wenn der Pooler die Anforderung nicht innerhalb des Zeitlimits erfüllen kann, wird eine Fehlermeldung ausgegeben.

  • Themenseiten: Anwendungsentwicklung, Big Data, Datenbank, Software

    Fanden Sie diesen Artikel nützlich?
    Content Loading ...
    Whitepaper

    Artikel empfehlen:

    Neueste Kommentare 

    Noch keine Kommentare zu Vorzüge des Verbindungspoolings unter .NET

    Kommentar hinzufügen

    Schreibe einen Kommentar

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *