SQLAlchemy: Erstellen im Vergleich zur Wiederverwendung einer Sitzung

Nur eine kurze Frage: SQLAlchemy redet aufrufen sessionmaker() einmal, sondern ruft die daraus resultierenden Session() Klasse jedes mal, wenn Sie sprechen müssen, um Ihre DB. Für mich bedeutet das, dass der zweite ich würde meine erste session.add(x) oder etwas ähnliches, das würde ich erstmal

from project import Session
session = Session()

Was ich bis jetzt wurde das Gespräch session = Session() in meinem Modell einmal und dann importieren immer der gleichen Sitzung überall in meiner Anwendung. Da dies einen web-Anwendungen würde dies in der Regel das gleiche bedeuten (wie eine Ansicht ausgeführt wird).

Aber wo ist der Unterschied? Was ist der Nachteil der Verwendung einer session die ganze Zeit gegen die Verwendung es für meine Datenbank-stuff bis die Funktion fertig ist und dann ein neues zu erstellen, das nächste mal will ich sprechen, um meine DB?

Bekomme ich das wenn ich mehrere threads, jeder sollte seine eigene session. Aber mit scoped_session() ich bereits stellen Sie sicher, dass problem existiert nicht, muss ich?

Bitte klären sollten meine Annahmen falsch sind.

InformationsquelleAutor der Frage javex | 2012-08-31

Schreibe einen Kommentar