3 Stimmen

LINQ2SQL-Leistung vs. benutzerdefinierte DAL vs. NHibernate

Bei einer einfachen, benutzergesteuerten Webanwendung mit hohem Datenverkehr (keine ausgefallenen Berichte/BI):

Wenn mein oberstes Ziel die Leistung ist (und nicht die einfache Wartbarkeit, Abfragbarkeit usw.), würde ich vermuten, dass in den meisten Fällen eine rollenbasierte DAL die beste Wahl wäre.

Jedoch, wenn ich Linq2SQL oder NHibernate wählen würde, ungefähr welche Art von Leistung Hit würden wir reden? 10%? 20%? 200%? Welche der beiden Varianten wäre schneller?

Hat jemand Zahlen aus der Praxis, die Aufschluss darüber geben könnten? (und ja, ich weiß, dass Stackoverflow auf Linq2SQL läuft )

3voto

John Farrell Punkte 24474

In zwei stark frequentierten Webanwendungen brachte die Umstellung eines ORM-Aufrufs auf eine gespeicherte Prozedur von ado.net nur eine Änderung von 1-2 % bei CPU und Zeit.

Der Wechsel von einem ORM zu einem benutzerdefinierten DAL ist eine Übung in Mikrooptimierung.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X