我使用C#,Linq和EF4。
我的网站有一个前端,我需要在我的网页上显示(只读)数据库中的数据。
我想知道什么可以帮助我向用户提供更快(只读)的结果。
这是我想要实现的一些想法。
请告诉您对A点的具体想法。感谢您的帮助!
答案 0 :(得分:2)
如果您的功能正常,如果您需要优化,那么我认为第一步是衡量。首先,尝试使用SO的分析器查看您的应用消耗的时间http://code.google.com/p/mvc-mini-profiler/
测量完毕后,您可以尝试A,B或C - 或者您可以确定一个完全不同的区域进行优化。 (我自己喜欢的EF优化区域是延迟加载的子对象)
更新(回应评论):老实说,我不希望A,B或C为你带来任何重要的时间 - 你需要衡量 - 这是找出优化的唯一方法。一旦你测量完了,我的猜测是A,B或C都不会为你节省任何重要的时间。
答案 1 :(得分:0)
我觉得你所有的A,B和C都很棒,另外
您可以在数据库级别拥有索引。如果您使用的是SQL Server,则可以使用Database Tunnig顾问调整数据库以进行查询。
如果您使用Entity SQL,它将比LINQ http://blogs.msdn.com/b/adonet/archive/2008/03/27/ado-net-entity-framework-performance-comparison.aspx
并阅读此内容 http://blogs.msdn.com/b/dparys/archive/2009/04/06/improving-entity-framework-performance.aspx
答案 2 :(得分:0)
我同意之前的回应,首先衡量一下表现。这将告诉您哪些方法耗尽了最多的处理时间。在理解问题之前,考虑使用新事物并不是一种有效的时间利用。但是,学习新东西以便拥有更多工具是一个好主意。您可以在适当的时候使用新工具。
ANTS是衡量绩效的绝佳工具。他们有很好的教程,使用14天是免费的,有足够的时间来查找问题。
在了解需要改进的地方后,您可以尝试不同的改进方法。