VS 2008/AJAX项目在压力下失败

7
我已经在VB.NET/VS2008/AJAX/SQL Server项目上工作了两年多,没有遇到任何实际问题。但是,在我们进行大量压力测试的最后一周,一旦我达到约150个同时用户,该项目就会开始失败。我甚至创建了一个简化版网站,只需登录用户,打开其个人资料,然后注销即可。即使在压力下,它仍然失败。当我说“失败”时,我的CPU飙升,应用程序池最终崩溃。这在运行Windows 2008 R2双四核服务器w / 16 GB内存上。内存从未飙升,但CPU达到顶峰。
我在网站上运行了YSlow,并指出需要压缩.axd文件等...我通过对所有内容实现Gzip压缩来解决了这个问题,但这正是我达到150个用户的原因。现在运行YSlow,它显示一切都是“A”。
我真的不知道该怎么办了。我非常愿意分享该网站的简化版本供任何人审查。我不确定是服务器、我的代码还是web.config的问题。

当你说 CPU 飙升时,你指的是哪个服务器?数据库服务器还是 Web 服务器? - Mark J Miller
听起来好像有些可疑的事情正在发生。如果没有代码和/或一些事件日志来说明应用程序池崩溃,这将很难诊断。 - John Culviner
2
请提供代码。你是否没有及时关闭SQL连接?没有对对象执行处理?using语句不够?也许有一些后台线程?在某个地方有一个非常深的throw堆栈? - NeroS
你们的IIS中是否有任何故障保护选项,以避免通过回收应用程序池导致高处理器利用率? - kisp
1个回答

0

我知道有点晚了,但你考虑过在站点的应用程序池中增加工作进程数量以形成 Web Garden 吗?你可以在 IIS 管理器中完成此操作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接