刚接手一个新网站,用户反应网站打开太慢.
1.询问了网站每天用户访问量, 但并不高,不过百万. 理论上讲不可能这么慢.
判断:普通网站,一台服务器 不超过100W访问量,不应该产生问题.
而且我们是两台服务器 Web与Mysql分离.
2.查看Web服务器的 资源使用情况, 偶尔有峰值,但并不严重.
这步使用top命令即可.
判断:问题是不是出在数据库服务器上.
3.查看数据库服务器的资源使用情况,发现MYSQL进程经常出现 CPU占用过高.
这步仍旧使用top命令.
判断:MYSQL 有问题.
4.查看MYSQL进程. 使用数据库命令 show full processlist; 并频繁刷新
经常显示一些SQL语句, 有些语句执行时间较长.
判断:查询语句有问题.
但不能确定哪些语句有问题.
5.修改MYSQL配置,记录慢查询. 设置为1秒. 没办法再小了. 记录所有超过1秒的查询.
这步 修改mysql.ini
6.等待一段时间后,查看日志. 发现有一条语句 出现次数较多.
7.在MYSQL中执行此语句 , 时间较长,超过1秒.
可以确定,问题出在这条语句上.
8.分析此语句,使用 desc select ......
发现索引使用不佳. 语句就不给大家看了. 这是一条 多表联合查询语句
9.查看相应表的 索引,发现有一个 表连接对应的字段没有索引.
10.建立一个相应的索引.
11.清空 慢查询日志,再继续观察.
发现情况得到很大缓解.
12.网站访问速度 有所提升,虽然仍不理想,但已经不会出现卡死的情况了.
以后继续分析 程序,后继文章中记录.
阅读(461) | 评论(0) | 转发(0) |