之前遇到项目接口查询缓慢,第一反应就是改写复杂SQL、优化联表查询,后来线上经验多了才发现:大部分数据库卡顿,都是低级问题导致的。
日常开发中,最常见导致数据库变慢的原因:
- 查询字段没有建立索引,全表扫描数据
- 使用select * 查询全部字段,浪费IO资源
- 分页查询深度过大,没有做好limit优化
- 业务代码中出现循环查询数据库
大部分项目,做好索引优化、避免循环查库、规范查询字段,接口速度直接提升十倍。
不要一上来就追求高深的数据库调优,规范开发,就能解决绝大多数性能问题。
之前遇到项目接口查询缓慢,第一反应就是改写复杂SQL、优化联表查询,后来线上经验多了才发现:大部分数据库卡顿,都是低级问题导致的。
日常开发中,最常见导致数据库变慢的原因:
大部分项目,做好索引优化、避免循环查库、规范查询字段,接口速度直接提升十倍。
不要一上来就追求高深的数据库调优,规范开发,就能解决绝大多数性能问题。