Linq To Sql vs實體框架性能

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

我一直在尋找比較L2S和EF的最新性能基準測試,並且無法使用EF的發布版本找到任何經過測試的調用存儲過程。所以,我運行了一些自己的測試,發現了一些有趣的結果。

這些結果看起來是否合適?我應該以不同的方式進行測試嗎?

上下文的一個實例,一個sproc的調用:(死鏈接)

上下文的一個實例,同一個sproc的多次調用:(死鏈接)

上下文的多個實例,同一個sproc的多次調用:(死鏈接)

一般承認的答案

我認為你應該以一種不同的方式測試它,以便區分啟動成本和執行成本 。特別是實體框架由於需要編譯數據庫視圖而具有大量的啟動成本 (儘管您可以提前執行此操作)。同樣,LINQ有一個編譯查詢的概念,如果多次執行查詢 ,這將是合適的。

對於許多應用程序,查詢執行成本將比啟動成本更重要。對某些人來說,情況恰恰相反。由於這些的性能特徵不同,我認為區分它們很重要。特別是,將啟動成本平均化為重複執行的查詢的平均成本是誤導性的。


熱門答案

這看起來是LINQ to SQL和Entity Framework之間性能的一個很好的衡量標準。

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



許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因