Asp.net 应用程序 多用户阻塞(慢),救急
问题症状:我有个Asp.net 应用程序,II7(windows web server 2008,4核,4g内存),集成模式(经典模式也试过),主要是定时(15秒间隔刷新用户,取数据等,5个xmlhttp远程调用aspx)刷新页面,访问后台数据库(mssql),显示在前台(取坐标显示在地图上,地图是另外服务器上的,地图调用是ascx),只要是一个用户出现卡住现象(IE不刷新),页面不动,其他用户(才2,3个用户不同计算机登陆)也卡住(可以是不同页面),几分钟后才好(期间cpu也低:3%,内存正常),奇怪的事我试过多用户登陆,几台机器开十几个ie,都没事,但是远程用户使用时多数就可能有问题(少时也没问题)。我按照网络上“web.config和machine.config解决 IIS Server Too Busy”修改了web.config machine.config增加了线程数等,改为<processModel maxWorkerThreads="200" maxIoThreads="200"/>,修改了asp.net.config,web.config 设置了数据库连接池,timeout改小等,卡的时间变短了,还是卡。
前面发帖子说可能是数据库死锁,阻塞,我修改了前后台的sql语句,改成select with(nolock)update with(rowlock),数据库操作换成异步,按照网上的在注册表中修改了MaxConcurrentRequestsPerCPU=5000,无效。
主页面是多frame的,有按照网上的“session引起阻塞”在aspx中加了“sessionstate=“readonly””,还是无效,又重新发不成另一个网站(完全一样的程序,当然在同台服务器上),发现当一个网站(多用户登陆)出现老问题时,这个网站速度正常(一个用户登陆),不受影响(应该是不同进程),他们是同样的后台(一台服务器),我想可以排除ii7和后台mssql的问题了(就是不会是数据库死锁等原因),就是在一个iis进程出现阻塞,但再开一个就不影响(本来不该影响),但问题到底在哪,不知道其他人是否遇到相同情况,望高手支招,
以下是性能计数器的显示,卡的时候红线更低平,长(持续30秒左右) --------------------编程问答-------------------- 不清楚,检查一下程序在sql处理上是不是有问题,sql锁住的情况比较大。是不是程序使用事务的原因 --------------------编程问答-------------------- 检查数据库操作,数据库事务、锁
缓存
资源消耗情况
补充:.NET技术 , ASP.NET