问题
- 最近出现页面访问非常慢,经过排查,发现数据库服务器负载非常高,cpu占用99%左右
- 数据库慢查询日志中的sql语句在正常负载下执行并不慢,但是在那一个时刻确是非常慢的
- 日志中,有大量的table lock,sleep等日志信息
- 数据库使用的mysql,使用的是MyIsam存储引擎
解决思路
- 最近出现页面访问非常慢,经过排查,发现数据库服务器负载非常高,cpu占用99%左右
- 数据库慢查询日志中的sql语句在正常负载下执行并不慢,但是在那一个时刻确是非常慢的
- 日志中,有大量的table lock,sleep等日志信息
- 数据库使用的mysql,使用的是MyIsam存储引擎
根据上述情况,明显为数据库压力过大,当然有很大可能是由于程序代码造成的问题,但是修改程序代价高昂,时间成本也很高
- 增加数据库服务器的台数
- 因为我们的服务的添加修改和删除接口不多,写入的需求较小,但是查询的需求非常大,基本都是浏览和查询,所以使用了读写分