Linq To Sql vs. Entity Framework Performance

entity-framework linq-to-sql performance stored-procedures

Frage

Ich habe nach den neuesten Leistungsbenchmarks gesucht, die L2S und EF vergleichen, und konnte keine der getesteten aufrufenden gespeicherten Prozeduren mit der veröffentlichten Version von EF finden. Ich habe einige meiner eigenen Tests gemacht und interessante Ergebnisse gefunden.

Sehen diese Ergebnisse richtig aus? Soll ich es auf andere Weise testen?

Eine Instanz des Kontextes, ein Aufruf des Sproc: (Dead Link)

Eine Instanz des Kontexts, mehrere Aufrufe desselben Sproc: (Dead Link)

Mehrere Instanzen des Kontextes, mehrere Aufrufe desselben Sproc: (Dead Link)

Akzeptierte Antwort

Ich denke, Sie sollten es etwas anders testen, um Startkosten von Ausführungskosten zu unterscheiden. Insbesondere für das Entity Framework fallen erhebliche Startkosten an, die sich aus der Notwendigkeit ergeben, Datenbanksichten zu erstellen (dies ist jedoch im Voraus möglich). Ebenso gibt es in LINQ eine kompilierte Abfrage , die sich eignet, wenn eine Abfrage mehrmals ausgeführt wird.

Für viele Anwendungen sind die Abfrageausführungskosten wichtiger als die Startkosten. Für einige mag das Gegenteil der Fall sein. Da diese Leistungsmerkmale unterschiedlich sind, halte ich es für wichtig, sie zu unterscheiden. Insbesondere ist die Durchschnittsbildung der Startkosten in die Durchschnittskosten einer wiederholt ausgeführten Abfrage irreführend.


Beliebte Antwort

Dies scheint ein ziemlich gutes Maß für die Leistung zwischen LINQ to SQL und Entity Framework zu sein.

http://toomanylayers.blogspot.com/2009/01/entity-framework-and-linq-to-sql.html



Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum