Web应用性能问题

我有一个网站挂了每5或10个请求。 当它工作时,它的工作速度很快,但如果你离开浏览器坐几分钟,然后单击一个链接,它只是挂起没有回应。 用户必须在浏览器中刷新几次,然后再次快速运行。

我在IIS 7.0(Windows Server 2008)上运行.NET 3.5,ASP.NET MVC 1.0。 Web应用程序连接到在同一实例上本地运行的SQL Server 2005数据库。 数据库有大约300兆的内存,其余的免费的networking请求我猜。

它托pipe在GoGrid的云服务器上,这个实例有1GB的RAM和1个核心。 我意识到这并不多,但目前我是唯一使用该网站的人,而且我仍然收到这些挂起。

我知道解决这个问题是一件困难的事情,但是我希望有人能够指出我可能的IISconfiguration问题的正确方向,或者每1000个用户使用这些技术的“粗糙”平均硬件要求。对于一个web服务器,我应该有两个核心,所以如果它很忙,你仍然会得到一个回应。 或者,也许slashdot人是正确的,我是一个白痴使用Windows时代,哈哈。 根据我的经验,通常是MYalgorithm/configuration错误,而不是底层技术的错误。

任何见解都表示赞赏。

你有没有尝试在真正的服务器上运行应用程序,看它是否挂在那里? 在怀疑您的应用程序或操作系统是一个问题之前,我会怀疑“云”计算平台。 你为什么说SQl有300Mb的内存= – 是它使用的是什么? 你的规格说,你有一个1 GB的RAM的服务器。

正如Jim B所指出的那样,你应该在部署之前在你的LAB中进行testing。 检查以下内容

  1. IIS – 确保应用程序具有自己的应用程序进程空间。

  2. 在asp.net中检查你的会话状态。

  3. validation应用程序(IIS)和数据库之间的连接,也许云连接正在被丢弃。

  4. 你能看到IIS的事件日志吗? 看看那个。

从提供的信息来看,似乎最可能的问题是虚拟机上的单个核心,因为您正在运行Web服务器和系统上的数据库。 如果您的托pipe公司允许您添加/删除内核,请添加第二个内核并再次检查您的性能。