In der Praxis finden wir den Standard NHibernate (v2.0 & 2.1) FlushMode = Auto, um extrem teuer zu sein. Die Überprüfung der NHibernate-Quelle legt nahe, dass die Algorithmen zum Ermitteln, was gelöscht werden muss, auf Brute-Force-Schleifen durch alle Entitäten in der Sitzung angewiesen sind. Dies geschieht für jede Abfrage, die in einer Transaktion ausgeführt wird.Warum ist NHibernate AutoFlush so teuer?
In einigen Produktionsszenarios mit Updates für viele Elemente mit mehreren Abfragen haben wir den Prozess mit FlushMode = Auto im Vergleich zu FlushMode = Commit 100 Mal länger gesehen.
Alle Gedanken/Beratung/Best Practices für die Verwendung von Flushmode bei ‚komplexen‘ Session-Logik mit Beteiligung mehrerer Updates, mehrere Abfragen usw.
Irgendwelche Ideen Durchführung der Autoflush-Algorithmen in nHibernate auf die Optimierung?
damit verbundene Frage: http://stackoverflow.com/questions/1724307/nhibernate-poor-performance-on-auto-flush-events – zvolkov
yep ... eigentlich das gleiche Problem :) – Pawel