SELECT语句引起的瓶颈问题

SELECT语句引起的瓶颈问题
语境还原:

公司推出了一个新项目。在联机操作的第二天,它发现了数据库服务器和IIS服务器的网络IO的瓶颈。1GB的网络带宽占用的70% - 100%,即每秒的数据传输700mb-1gb。数据库使用的内存高达21gb。

IIS服务器CPU的使用率经常爆炸到80% - 90%,这导致网站频繁连接超时。

原因:晚上,网站必须暂时关闭,服务器维护,进行全面检查和跟踪,发现一句话是由一句话造成的:选择
SELECT * FROM表
这句话,语法是没有问题的,但对problem.table1应用存储在大约100000行数据,和表数据将增长每天数以万计的。
为了计算行的总数,这个语句经常被调用,并且每秒刷新少于1000次。
它也导致了网络的瓶颈。

解决方案:SELECT语句更改为

复制代码代码如下所示:
select count(*)从表1
可以解决的问题,网络IO数据减少到少于10MB的立即和数据库使用内存也保持在预期范围为12GB。

这似乎是一个非常简单的问题,但事实并非如此,要解决这个问题需要6个小时,检查这个问题1小时,然后修改代码5小时。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部