我有一个Asp.Net网站项目,在发布期间导致越来越令人沮丧的内存问题。 Visual Studio在正常工作中运行得相当好,甚至构建阶段也相当快(特别是在遵循下面列出的帖子中的一些建议之后)。然而,发布阶段很慢,而且更重要的是,Visual Studio会定期消耗它消耗的内存的400%到500%(在任务管理器中从大约500 Mb到大约2.25 Gb)。此外,在Visual Studio中出现发布成功消息后,内存消耗增加持续几分钟(在某些情况下为5或10)。事实上,这确实是问题所在 - 我不介意在发布活动期间做得不多,但是一旦完成,我想立即恢复工作,但内存过载意味着我的整个系统对于看似懒散的东西没有反应VS之后的时间似乎已经完成了它的工作。
解决方案的结构如下:
Solution
|
-Web Site Project
|
- Data Access Layer Project
|
- Data Access Layer Tests
DAL和后面的一些代码都依赖于外部库来进行ERP系统访问,但是我非常小心地将它们保存在同一个版本上(事实上,我必须是 - 网站上的一些页面如果版本不相同则中断)。我还有其他几个小助手库,我也非常小心 - 在这两个项目中,它们都是从共享文件夹中引用的。我不认为我患有“Dueling Assembly References”
该网站设置为“允许此预编译站点可更新”标志和“使用固定命名和单页程序集”标志。
整个解决方案在其当前实施例中作为VS 2005 / Asp .Net 2.0站点启动。我们跳过了2008,现在在VS 2010 / Asp .Net 3.5下运行它。我看到的问题在VS2005下或多或少地发生了,并且肯定跟着我从我的旧机器(有点动力不足)到这个,看似相当最新的一个。
我正在构建的机器是一台带有8 Gb内存的Win7 64位机器。我在VS中运行了一些AddIns / Extensions(特别是Telerik的JustMock和DevExpress的CodeRush / RefactorPro)。
我已经在SO(包括this one和this one)上仔细阅读了其他一些与内存/性能相关的常规线程,并遵循了我认为相关的建议。
其他人见过这个,或者有什么指示我可以做些什么来减轻它?
修改
FWIW,我将其发布到本地计算机上的文件夹中,所以我认为这个问题与网络延迟没有关系......
答案 0 :(得分:1)
现在回过头来。我已经离开了这个位置并且在我的新职位上没有遇到同样的问题,但在我的新职位上制定一个“构建解决方案需要forEVAR”问题时,我指出了确保我的断点保持在一个合理的级别 - 我经历了很长的构建时间,但在删除所有断点(大部分未被使用)之后,构建时间提高了十倍。
我很可能在这个问题中提到的项目遇到同样的问题,所以也许这会帮助那些遇到这个问题的人。