建站学 - 轻松建站从此开始!

建站学-个人建站指南,网页制作,网站设计,网站制作教程

当前位置: 建站学 > 数据库 > 数据库综合 >

一条Select语句导致瓶颈

时间:2012-05-12 15:22来源: 作者: 点击:
情况:上周,公司一项目新上线,刚上线的第2天,在后台发现数据库服务器与IIS服务器的网络IO出现瓶颈,1GB的网络带宽,占用了70%-100%,也就是每秒传输数据700MB-1GB,数据库使用内存高达21GB。 IIS服务器CPU使用率时常爆至80%-90%,导致网站频频出现连接超时。   原

情况上周,公司一项目新上线,刚上线的第2天,在后台发现数据库服务器与IIS服务器的网络IO出现瓶颈,1GB的网络带宽,占用了70%-100%,也就是每秒传输数据700MB-1GB,数据库使用内存高达21GB。

IIS服务器CPU使用率时常爆至80%-90%,导致网站频频出现连接超时。

 

原因晚上只好暂时关闭网站,进行服务器维护,作全面的检查跟踪,发现是一句Select语句导致:

 

Select * From Table1

 

这条语句,语法是没问题的,但在应用上出了问题。Table1存储的是10多万行数据,表数据每天都会上万的增长。

为了统计总行数,频频调用这语句,每秒刷新不低于1000次。

也因此导致网络出现瓶颈。

 

解决:后面把Select语句改成

 

Select Count(*from Table1 

 

 即可解决问题,网络 IO数据马上降至10MB以下,数据库使用内存也保持在预计范围12GB。

 

看似非常简单的问题,其实不然。解决这问题,所花的时间周期是6小时,检查问题使用1小时,修改代码使用5小时。 

 

 小结:

做事要细心,不要犯低级错误,有时候成功取决于细节。

(责任编辑:admin)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片