获得:
aspnet_wp.exe (PID: 988) was recycled because memory consumption exceeded the 148 MB (60 percent of available RAM).
web.config等优化的任何建议?已经完成所有调试/发布编译工作。但仍需要快速记忆。机器得到256mbs ram,512mb它运行平稳。想尽可能地把它压下来。在代码中它也尽可能地保持低内存,但它只有50mb数据。这一定是可能的。或框架是否需要这么多?
答案 0 :(得分:2)
您可以尝试取消配置所有不使用的HttpModule。例如,Windows身份验证是常见的。
您还可以查看您正在分配的任何静态变量。
在尽可能多的页面上禁用ViewState可能会有所帮助。
最小化或消除任何额外加载的DLL(来自bin目录或GAC)。
但是,你不太可能通过狩猎和啄食来节省大量内存。如果你真的想要追逐它,你需要一个内存分析器工具,例如SciTech的.NET Memory Profiler。他们有两周免费试用。
答案 1 :(得分:1)
嗯,它应该适合,但这取决于你正在做什么,以及你正在运行的IIS版本。
Optimizing Memory Usage (IIS 6.0)
运行IIS 6.0的服务器受益于充足的物理内存。通常,您添加的内存越多,服务器使用的内存越多,执行的越多。 IIS 6.0至少需要128 MB的内存;建议至少256 MB。如果您正在运行内存密集型应用程序,则服务器可能需要更多内存才能以最佳方式运行 - 超过建议的256 MB内存。
IIS 7.0 however has somewhat larger requirements:
那篇文章还有一些关于你可以进行的优化的其他建议,我还推荐了Tess Ferrandez的博客,特别是她的帖子".NET Memory usage - A restaurant analogy"很好地解释了内存分配,以及她关于调试内存使用的其他帖子 - 从与RickNZ's suggestions类似的地方开始。
答案 2 :(得分:0)
你在记忆中放了什么?
256mb远低于服务器所具有的水平,即使它是共享服务器,你可能还有更多的工作空间。
你在缓存吗?
你在运行什么操作系统?
就像RickNZ说的那样尽可能多地削减脂肪可能会为你节省一些时间。
老实说,我认为你只是有一个不切实际的记忆目标。