前言:公司近期开发了一款应用,时间紧,任务重,同时为了圈占市场,没来的及压测,直接打上生产环境。运行了一天,用户量10几万,一天不到60万PV,没发现异常。就在清明节放假当天,用户激增80万,一天400万PV。
突然有一个功能用不了了,发请求一直转圈,没响应,服务器集群上,这个业务实例的接口都访问不了。开发人员定位了三个小时,没有找到问题,问题上升之后,找到我。凭借多年的故障处理经验。首先定位看是不是线程阻塞问题,CPU平平无奇,一点问题没有;然后打开数据库服务器,发现数据库服务器CPU飙升到98%,一直满负荷工作,问题很简单了,CPU压力过大的问题,肯定高负荷读写。查看了慢查询语句,发现了问题,一个查询语句,Selet * from XXX表 where xx-id =yy ;问题一,xx_id没有加索引,问题二,需要查三个字段,返回全列。