情境还原: 公司一项目新上线,刚上线的第2天,在后台发现数据库服务器与IIS服务器的网络IO出现瓶颈,1GB的网络带宽,占用了70%-100%,也就是每秒传输数据700MB-1GB,数据库使用内存高达21GB。 IIS服务器CPU使用率时常爆至80%-90%,导致网站频频出现连接超时。 原因:晚上只好暂时关闭网站,进行服务器维护,作全面的检查跟踪,发现是一句Select语句导致: Select From Table1 这条语句,语法是没问题的,但在应用上出了问题。Table1存储的是10多万行数据,表数据每天都会上万的增长。 为了统计总行数,频频调用这语句,每秒刷新不低于1000次。 也因此导致网络出现瓶颈。 解决:后面把Select语句改成<div class="codetitle"><a style="CURSOR: pointer" data="41679" class="copybut" id="copybut41679" onclick="doCopy('code41679')"> 代码如下:<div class="codebody" id="code41679"> Select Count() from Table1 即可解决问题,网络 IO数据马上降至10MB以下,数据库使用内存也保持在预计范围12GB。 看似非常简单的问题,其实不然。解决这问题,所花的时间周期是6小时,检查问题使用1小时,修改代码使用5小时。 (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|