问题描述
各位大大:小弟最近给客户搭建了个网站,2008R2+iis7+.net4.0+mysql之前在测试环境下一直好好的,上到正式环境没两天,就出问题了。现在的情况是,网站运行一段时间(4-5小时)后,就会出现访问巨慢的情况,但仅限于有数据库连接的页面慢,没有数据库连接的aspx页面和html页面速度都正常。有数据库连接的页面大概打开速度大概在2分钟左右。。。。而且日志中没有任何报错。。。。就是慢。。。。网站使用独立的应用程序池,池的配置和网站的配置基本都是默认的。数据库连接用了pool方式,开了100个。出现这种问题后,回收一下就好了,也不用重新启动池和网站。但过一段时间就又不行了。比较值得注意的是,如果我在访问一个有数据库连接的页面时,再开一个IE访问没有数据库连接的页面,没有数据库连接的页面也会变慢,而且会等到前一个有数据连接的页面刷出来,后一个没数据连接的页面才会刷出来。小弟怀疑是不是并发数的原因导致的?请各位大大不吝赐教。
解决方案
解决方案二:
急啊。。。自己顶一下。。。。
解决方案三:
赶脚像是应用程序池回收了呢
解决方案四:
还真不是,如果回收了就没这个问题了。。。。这个问题只要一回收就好了。。。。
解决方案五:
你返回少量的数据测试一下,页面有多少用户访问,大量用户访问才可能有并发数的问题吧
解决方案六:
数据库链接有使用完未释放的情况吗?同时有多少用户的并发?数据处理时是否有占资源较多的语句或逻辑关系(如死锁之类的)?
解决方案七:
1、mysql在windows下的最大连接数默认就是100,最好重新设置下;2、从你的现象描述来看,用户并发引发问题的可能性较小,还是主要找找程序的数据操作语句中是不是有死锁和数据库连接打开后是否及时关闭了吧
解决方案八:
网站访问量不大,因为还没有正式上线,每天大概100左右的访问量。数据连接池我已经改成50了,但今天跑了一天,到4点的时候又完蛋了。。。。已经彻底快崩溃了。。。有什么办法能把快速查是否程序中有死循环或者数据库连接未关闭么?谢谢各位。
解决方案九:
数据库连接也应该是正常关闭了。可以看到50个数据库连接是循环使用的。而且在没有访问的时候,状态都是sleep的。。。。
解决方案十:
跟各位问一下,死锁是指数据库的死锁吗?如果是程序中有死循环的话,内存应该不停上涨才对吧?
解决方案十一:
我也遇到这个问题了……呵呵 准备重新装数据库…… 没找到原因
解决方案十二:
检查你的代码看看数据库是否用完没释放
解决方案十三:
全都释放了呀,所有的数据库连接都是写在一个文件里的,检查过好几遍了。。。。
解决方案十四:
把代码贴出来才知道
解决方案十五:
以前有次修改别人的站,也是本地调试访问速度巨慢....后发现,MSSQL开远程访问就正常了....你的是MYSQL,俺就不清楚了