开篇:慢查询是怎么拖垮整个系统的?
想象一下这个场景:周五下午五点,你的电商系统突然变慢。订单页面转了十几秒才打开,客服消息炸了群。运维一看监控------数据库连接池全满,几百个线程都在排队等着。
最后查出原因:一条没加索引的查询语句,平均执行要 3 秒。高峰期每秒来 50 个请求,数据库连接根本不够用。
这就是慢查询的可怕之处。它就像高速公路上的一起追尾事故------事故本身可能只涉及一辆车,但它把整条车道堵住了,后面几公里的车全走不了。一条慢 SQL 占着连接不释放,后面的请求只能排队,连接池被耗尽,所有查询都受影响。
大约 21 分钟