我的Asp.net应用程序使用 测试服务器上有25%-30%的CPU,其上有600 MB RAM。
我可以看到asp_wb进程占用了相当多的CPU。
这是我使用一个用户进行测试的时候。
服务器可以承受多少用户而不会摔倒?
CPU使用率与用户数之间是否存在关系?如果有2个用户,我的应用程序将会占用60%的内存使用量?
或者/应该/服务器如何处理这个?
答案 0 :(得分:1)
asp.net基于池而不是用户。
每个用户的一些内存正在进行用户会话,但我相信你没有在会话上保存大量数据(是吗?)。
现在我建议从sysinternals运行进程资源管理器,并检查 w3wp.exe 工作集和内存的虚拟大小为了这。您可以通过在进程内存选项卡上打开这两列来完成此操作。
然后你会看到asp.net对你的应用程序需要多少内存。
如果要打开它,请检查配置池的第二步。也许您已将其配置为过于频繁地回收,或者当您具有超过125k的工作集内存时进行回收,并且您的程序具有200k工作集内存。所以你需要重新校准一些值。
与流程资源管理器一起,您可以查看应用程序需要多少内存,并正确设置池。
对于cource而言,内存可能存在其他问题和其他问题但每个用户都没有吃内存而需要检查内存的使用位置 - 过程资源管理器是这项工作的好工具。
希望得到这个帮助。