最近客户经常反映说网站打开慢得很,经查看,发现是sql server的问题,每当网站响应很慢时,通过Management中的活动监视器查看线程数都是在200以上,怀疑是哪个地方的sql语句卡住了,但是又不知从何下手。。重启sql server 后,问题可以解决,但是这也不是个办法啊。望有经验的园友给支支招!
基本上就是代码忘了关闭链接收发的,解决的方式就是整站检测所有的sql操作。
网站项目都是用的LINQ来操作数据库的,理论上应该不会存在没有关闭链接的情况啊。
@花不语丶: 没有理论上,只有实际上~~
路过学习
建议用SQL Profiler跟踪一下哪些SQL操作IO比较高
线程数多应该就是连接没关闭。另外,数据库数据量大吗,有没有建立索引,卡住的时候有没有lock?
看看是不是数据冗余,数据太多,
多谢大家的意见,
初步估计是由于在使用linq进行一个复杂查询时,卡住了数据库。
现在优化之后,就没有出现过这种情况咯,提醒各位童鞋,代码需谨慎啊~