2013-10-07 12 views
9

Warum müssen wir für den SQL-Verbindungspool eine minimale Poolgröße einrichten? Da Verbindungen im Verbindungspool gespeichert und wiederverwendet werden, müssen wir Live-Verbindungen beibehalten, die durch die Mindestpoolgröße festgelegt sind. Vielen Dank.Warum müssen wir die Mindestgröße für den Pool in ConnectionString festlegen

+0

Warum brauchen Sie _? Wenn Sie nicht die Mindestgröße angeben, ist es 0. –

+0

@TimSchmelter ich denke, er will wissen, was wir überhaupt brauchen? Gibt es einen Zweck, dies zu haben? – Ehsan

+0

@TimSchmelter ja meine Frage ist, was Zweck der min Poolgröße – Helic

Antwort

12

Das Öffnen und Verwalten von Verbindungen ist teuer. Wenn Sie also wissen, dass Sie mehrere Verbindungen benötigen (immer), geben Sie MinPoolSize an, da dann sichergestellt ist, dass diese Verbindungen verfügbar sind.

Auch aus MSDN:

Wenn MinPoolSize entweder nicht in der Verbindungszeichenfolge angegeben oder ist als Null angegeben, werden die Verbindungen im Pool nach einer Zeit der Inaktivität geschlossen. Wenn der angegebene Wert MinPoolSize jedoch größer als 0 ist, wird der Verbindungspool nicht zerstört, bis die AppDomain entladen ist und der Prozess endet. Die Wartung von inaktiven oder leeren Pools erfordert minimalen Systemaufwand.

+0

ist Vielen Dank Tim! Wie hast du das gefunden? Ich habe viele Orte im Internet durchsucht, aber diese großartige Spezifikation nicht gefunden. – Helic

+1

Ich habe gerade die MSDN-Seite angesehen und nach 'MinPoolSize' gesucht. –

3

warum tun wir Live-Verbindungen spezifiziert durch die min Poolgröße

Wie Sie vielleicht wissen, dass die Verbindungserstellung ist ressourcenintensiv Job zu halten brauchen. Sie können also eine kleine Zahl wie 5 festlegen, wenn Ihre Anwendung konsistente Antwortzeiten benötigt, auch wenn sie stundenlang inaktiv war. In diesem Fall müssen die ersten Benutzeranforderungen nicht darauf warten, dass diese Datenbankverbindungen hergestellt werden. Sie können die Details zum Pooling here lesen.

+3

Danke. Wenn ich also das Verbindungspooling aktiviere, aber Min. Poolgröße 0, können Verbindungen nach kurzer Zeit wieder verwendet werden, werden aber nach einer langen Zeit geschlossen. Wenn ich die Mindestgröße für den Pool auf 5 festlege, werden mindestens 5 Verbindungen für immer geöffnet bleiben? Habe ich recht? Danke – Helic

+0

ja, du hast Recht. – Ehsan