Frage

Kann ich eine Datenbankverbindung im Session-Objekt?

War es hilfreich?

Lösung 4

Von diesem Link http://support.microsoft.com/default.aspx/ kb / 243543

Sie sollten nicht speichern Datenbankverbindung in Session.

Von dem, was ich verstehe, wenn Sie das tun, dann nachfolgende ASP-Anforderungen für den gleichen Benutzer müssen denselben Thread verwenden.

Wenn Sie also eine beschäftigt Website haben seine wahrscheinlich, dass ‚Ihr‘ Thread wird bereits von jemand anderem verwendet werden wird, so dass Sie warten, bis es verfügbar wird.

Dieses von vielen mehr Benutzer multiplizieren und Sie werden jeder für jeden elses Thread und eine nicht sehr reaktions Ort warten bekommen.

Andere Tipps

Es ist im Allgemeinen nicht so, eine Verbindungszeichenfolge in dem Application-Variable zu tun empfohlen, mit einer schönen Helferfunktion / Klasse ist eine sehr bevorzugte Methode. hier ist einige Referenz. (Toter Link entfernt, da es nun zu einer Phishy Website führt)

Ich scheine so zu tun, daran zu erinnern wird die Wirkung der einzelnen Einfädeln Ihrer Anwendung, die eine schlechte Sache sein würde.

Im Allgemeinen würde ich nicht speichern Sie alle Objekte in Anwendungsvariablen (und schon gar nicht in Session-Variablen).

Wenn es um Datenbankverbindungen kommt, ist es ein klares Nein, nein; außerdem gibt es absolut keine Notwendigkeit.

Wenn Sie die Verwendung von ADO mit der Datenbank zu kommunizieren, wenn Sie verwenden die gleiche Verbindungszeichenfolge (ja, mit allen Mitteln, speichern das in einer Anwendungsvariablen) für Ihre Datenbankverbindungen ‚Connection Pooling‘ wird hinter den Kulissen implementiert werden. Dies bedeutet, dass wenn Sie eine Verbindung freigeben, wird es nicht wirklich zerstört - es auf der einen Seite für die nächsten Jungs gestellt wird, die die gleiche Verbindung will. Also das nächste Mal bitten Sie, die gleiche Verbindung wird gezogen ‚von der Stange‘, anstatt explizit erstellt und instanziiert werden. - das ist eine ziemlich nette Effizienzsteigerung

Wie gesagt CJM, besteht keine Notwendigkeit, eine Verbindung in einem Session-Objekt zu speichern. Verbindungspooling viel besser ist

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top