查询缓慢的缘由redis
是否向数据库请求了没必要要的数据
1.查询时是否返回了所有或者大部分数据而后再进行处理的。
2.进行单查或者多表联查时是否返回了所有列数据。例如:数据库
SELECT * FORM table1 WHERE a=1; SELECT * FORM table1 LEFT JOIN table2 LEFT JOIN table2 where a = b;
查询时尽可能只查本身须要的字段,尽可能不要用*查询
查询400万数据,十个字段时直接使用*查询耗费时间为11s,只查询id时耗费3s左右缓存
拆分复杂的查询方式网络
减小对COUNT的使用,由于InnoDB使用COUNT是作的全表扫描,对大表使用COUNT查询会很是缓慢分布式