[集思广议]
      我们用 asp.net mvc3 + ef 做了一个网站,现在是内测阶段,发现打开速度非常慢。首页打开(无缓存)都在5-6s以上(测试环境:程序和db都在本机),请问各位 mvc3+ef 比较适合大多数项目的架构是怎么样子,能否给个截图说明各个项目的意思。

另:各位用 mvc3 ef 开发的网站性能究竟如何,怎么优化呢??

第一次用 ef ,第一个项目用 mvc,无从下手!

西安-DB | 
最佳答案
0

首次启动是会很慢,后面再打开页面的时候就快了。

1.对常用数据进行缓存。

2.在编写程序的时候避免不必要的分层,不合理的分层也会影响到性能。

3.你发布到外网上去,然后把地址告诉我们,我们来看看,哈哈。

4.将JS写成公用的,并放到单独的js文件中。

如果不是必须要加载时才执行js,建议将 js 放置在页面尾部。

5.减少aspx 设计页面中不必要的注释,将不用的控制都删除。

尽量多使用HTML控制,少使用服务器控件。

6.合理的配合使用Ajax,可以提升用户体验。

7.优化数据库,对频繁使用的表加索引。

8.我还是缓存,其实我上面有说到过,在此再强调一下。

9.常用的查询语句最好做做成存储过程,EF是可以调用存储过程的。还有可以做视图,EF了同样支持对视图的处理。

10.对于复杂的业务,比如5个表以上的关联查询,建议用sql来实现,EF在多表关联方面,会生成非常复杂的Sql语句,虽然生成的语句也不差,但是相比咱自己写的,我觉得自己写的还更好些。(强调,我是说的极多表关联的时候)

收获园豆:15
回复 | jerry-Tom | 老鸟四级 |园豆:3714 | 2012-08-23 10:20

谢谢给的这些建议,目前在逐一排查。

支持(0) 反对(0) 回复 | 西安-DB | 园豆:33 (初学一级) | 2012-08-23 23:08

@西安-DB: 哥们这个问题最终是如何解决的 我也遇到了

支持(0) 反对(0) 回复 | lerhe | 园豆:200 (初学一级) | 2013-06-09 17:00

其他回答(5)
0

只是首次启动慢还是每次打开首页都慢?

首次慢正常,每次打开首页都慢那就得看你的场景和代码了。

回复 | 向往-SONG | 园豆:4489 (老鸟四级) | 2012-08-22 22:49 |

每次都慢。。定义 viewModel 组合 view需要的数据 在view中展示,我一度怀疑我ef代码写的有问题,不过查来查去,看不出什么问题,甚至 在读取列表的时候,我都选择读取部分字段数据而不是全部数据。

支持(0) 反对(0) 回复 | 西安-DB | 园豆:33 (初学一级) | 2012-08-23 00:03 |

0

你的问题恐怕还没到架构的层面,你首先得从你的首页的流程开始分析整个加载过程,哪些部分占用了多少时间。

回复 | Launcher | 园豆:31040 (高人七级) | 2012-08-23 09:04 |

嗯,提到架构只是个题外话,想要调整下项目结构,因为现在  ef 底层数据访问都是直接写在控制器里的,代码几千行,吓死个人呐。

支持(0) 反对(0) 回复 | 西安-DB | 园豆:33 (初学一级) | 2012-08-23 23:09 |

嗯,我说的是 同一个控制器下 如果有 N多个 actionResult 的话,代码行数会比较多。

支持(0) 反对(0) 回复 | 西安-DB | 园豆:33 (初学一级) | 2012-08-23 23:10 |

0

方法一:

1.完全不可以不读取数据,直接打开页面,看看快不快

2.然后读取一个非常简单的表,看看快不快

3.用的viewModel读取,看看速度,同时打开sql profile,看看view的执行效率

方法二:

直接用sql profile看那些sql执行较慢,特别是你使用proceduce , view后。

收获园豆:5
回复 | 无尽思绪 | 园豆:94 (初学一级) | 2012-08-23 09:05 |

0

不是很会ef,但是ef应该有个初始化过程,应该写在application_start就可以了,会不会是每次request action都执行初始化呢?

回复 | 沉默的糕点 | 园豆:1765 (小虾三级) | 2012-08-24 10:49 |

0

asp.net mvc3 首次访问速度慢

第一:iis会定时释放已加载的类库。类库被释放后再次加载需要时间。

第二:EF首次访问速度确实比较慢!楼主可以随便写两个ADO.NET 的数据连接对比一下。

先在点想放弃EF的想法。

楼主有什么高见请随时贴出来,让我们学习一下!

回复 | ( ⊙ o ⊙ )啊! | 园豆:202 (菜鸟二级) | 2012-09-07 21:24 |

ASP.NET MVC3 + EF 性能优化解决方案以及最优架构相关推荐

  1. [转]ASP.NET MVC3 + EF 性能优化解决方案以及最优架构

    [集思广议]       我们用 asp.net mvc3 + ef 做了一个网站,现在是内测阶段,发现打开速度非常慢.首页打开(无缓存)都在5-6s以上(测试环境:程序和db都在本机),请问各位 m ...

  2. 让数据中台飞起来—— Quick BI性能优化解决方案及实践

    Quick BI"数据门户"在企业数据中台建设中的重要性 企业在数据中台初步建设完成以后,怎样让客户直观感受到数据中台的价值?企业决策者.各部门管理人员.业务运营人员如何通过统一的 ...

  3. 让数据中台“飞“起来— Quick BI性能优化解决方案及实践

    1 引言 Quick BI"数据门户"在企业数据中台建设中的重要性 企业在数据中台初步建设完成以后,怎样让客户直观感受到数据中台的价值?企业决策者.各部门管理人员.业务运营人员如何 ...

  4. Spark性能优化:Shuffle调优篇

    Spark性能优化:Shuffle调优篇 一.调优概述 大多数Spark作业的性能主要就是消耗在了shuffle环节,因为该环节包含了大量的磁盘IO.序列化.网络数据传输等操作.因此,如果要让作业的性 ...

  5. GPU性能优化之CUDA调优指南

    GPU性能优化之CUDA调优指南 GPU性能优化之CUDA调优指南 1 整体性能优化策略 2 最大化利用率 2.1 应用程序层次 2.2 设备层次 2.3 多处理器层次 2.3.1 占用率计算 3 最 ...

  6. [导入]ASP.NET26个常用性能优化方法

    数据库访问性能优化 数据库的连接和关闭 访问数据库资源需要创建连接.打开连接和关闭连接几个操作.这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源. ASP.NET中提供了连接池(Co ...

  7. ASP.NET夜话之21:asp.net网站的性能优化

    本篇主要讲述在ASP.NET中如何提高程序性能.提高程序性能的方法主要从编码和数据操作及优化配置三方面,本章要讲述的知识点有: l 程序编码优化 l 数据操作优化 l 配置优化 l 总结 21.1 程 ...

  8. CSS3 动画卡顿性能优化解决方案--摘抄

    最近在开发小程序,与vue类似,它们都有生命周期这回事. onLoad 监听页面加载 onReady 监听页面初次渲染完成 onShow 监听页面显示 到底是什么意思? 所以这又触碰到了我的知识盲区, ...

  9. EF学习和使用(七)EF性能优化篇

    自从ITOO平台旗下的评教系统问世之后,其性能问题引起了轩然大波.CPU占用过高,页面反映速度超慢,根本无法正常使用,为此我们专门成立一个性能优化小队,去研究为什么系统性能这么低,怎么优化性能? 框架 ...

最新文章

  1. 何晓冬:做科研与其各拿十块“铜牌”,不如合力做一块“金牌”
  2. 使用Lex和Yacc开发C语言的编译器
  3. Symfony 4.3 发布,带来搜索引擎自动保护
  4. for、enumerat、range、xrange
  5. SAP Spartacus的OccCmsPageNormalizer
  6. 解决重启VCSA 6.0提示:503 Service Unavailable错误
  7. 如何使用iMazing开启和平精英的极限帧数
  8. python自带的单元测试框架,最好的python单元测试框架
  9. 90后游戏开发大神毛星云跳楼自杀!8年执着国产3A梦碎
  10. 1招提升Java单元测试ROI
  11. python调用gephi_利用Python和Gephi制作人物关系网络图
  12. 汇编指令sar与shr
  13. 计算机桌面排列,如何进行桌面图标排列 让你的桌面一秒变酷炫【图文教程】...
  14. 2021鹏业安装算量软件常见问题整理(二十)
  15. plsql developer 怎么卸掉中文语言包
  16. 什么是欧拉角/姿态角?
  17. 最新研究报告: 坐飞机哪个位置最安全?
  18. 【十四、网站备案、博客备案、工信部备案】2021最详细wordpress博客建站教程(2021.03.04更新)
  19. 基于随机森林算法的糖尿病数据集回归
  20. apriori和关联规则算法

热门文章

  1. [UOJ500]任意基DFT
  2. C/C++中的restrict关键字
  3. 我,48岁,上海外企高管,如今,失业三年终于找到工作,分享工作经验
  4. 储能电站建设运行及效益分析
  5. 【记录】科大讯飞语音控件的使用——Android Studio
  6. php js是什么意思,js什么意思
  7. 基于JavaSSM+MySQL的健身网站前后台设计与实现
  8. 【分享NVIDIA GTC 23大会干货】在 GPU 上使用 Video Codec SDK,CV-CUDA 和 TensorRT 加速现代云上视频应用 [SE51229]
  9. 独孤思维:最近迷茫了
  10. 【亲测可用】win7远程连接问题:您的凭据不工作