我们用C#+asp.net为客户开会了一个基于SQL server2005应该程序.IIS版本是6.0,同时在线人数有300,经常查询的表的记录数约一千万条以下,最近经常出现当一个用户进行大数据查询,时,其它用户会集体停顿.出现假死机现象..待那个进行大数据查询的用户那边弹出超时信息时,所有的用户.全弹出一些超时相关的信息.请问这是什么原因,如何解决?

解决方案 »

  1.   

    谢谢大家,但假死机时,服务器的cpu的占用率是20%左右.也没有出现锁的情况.但奇怪的是,有时当一个用户点击网页点不动时,其它所有的用户同时都点不动了...
      

  2.   

    再不改变IIS与asp.net的情况下,我给你的建议是最好把那个所谓“大数据查询”分离出去,独立到其它服务、使用备份数据库来进行。再你没有进行过什么压力测试时,这种功能不应该设计在业务服务器上。
      

  3.   

    这个“优化”那个“优化”,换到IIS7、ASP.NET4,这些也都可以,只不过比较泛泛。其中最具体的可能是#1楼最后说的建立查询的快表的做法,不过这需要仔细分析设计。总之要保证只有每一次查询都是在10秒钟之内出结果的功能才能在业务服务器上使用,否则就应该提前处理到(删除掉)这种功能。