当前位置:编程学习 > C#/ASP.NET >>

关于Entity framework 执行效率和cpu占用率。。。

--------------------编程问答-------------------- 顶一下就有人了。 --------------------编程问答-------------------- 数据量大,当然站cpu了,你把它改成线程的试试 --------------------编程问答-------------------- 数据量不大把。。7600条,算大? --------------------编程问答-------------------- 现在人怎么这么少啊。。。顶一顶 --------------------编程问答-------------------- 一次性取出你所谓7600行的“小数据”,没有几个 Web 应用程序能撑得住。。 --------------------编程问答-------------------- 楼主不会分析啊。

明明就是查询数据库占用资源。

你这样偷懒写的代码,相当于select * from 视图 order by ****,没有利用索引。 --------------------编程问答-------------------- 一下子取这么多,当然大啦 --------------------编程问答-------------------- 我也发现Entity framework 占用CPU比较高,其实想一想,Entity framework要进行状态维护什么的,消耗资源也是正常的。因此CPU资源敏感的地方,我是不用Entity framework的。

像log用户的Action到数据库中,我会使用EF,但是直接调用Stored Procedure执行Insert,而不是Add()然后SaveChanges. 但是后台管理页面中,浏览log,则可以使用EF,毕竟使用不是很频繁,而且稍微慢点没有关系。 --------------------编程问答-------------------- "一个ToList()函数居然就占用到了61.8%。。"

这里的61.8%不是说CPU使用了61.8%,而是ToList()在整个函数中使用CPU的比例,7600行数据ToList,相比函数中的其他代码,估计有点高。7600取出来应该大部分都用不到吧,分页好点。一般一两百行一页足够了。 --------------------编程问答-------------------- 我也发现Entity framework 占用CPU比较高,其实想一想,Entity framework要进行状态维护什么的,消耗资源也是正常的。因此CPU资源敏感的地方,我是不用Entity framework的。
---------------------------------------------------------------
估计和这个有关系。

但是估计LZ的配置或者数据访问那块的代码也有问题,一款ORM产品如果只能有这样的表现,而且是微软出品。
这本身可能性就不大,还是找找代码或者配置的问题吧。 --------------------编程问答-------------------- 一直用ado.net  一个系统,记录操作记录,现在应有20W条数据,查询一样快,没有问题,

EF就没有用过 --------------------编程问答-------------------- 现成已经进入了多核时代,并行计算将会是将来的发展趋势:

entity.Test_vw_Lead.AsParallel().OrderByDescending(m=>m.CreatedDate).ToList() 
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,