什么是性能?

  • 吞吐与延迟
  • 监控与度量指标
  • 二八原则:
  • 选择合适的优化时机

DB/SQL 是业务系统性能优化的核心

  • 业务系统的分类:计算密集型

优化

写入优化

  • 使用Preparedstatement,减少SQL解析
  • batch 批量操作

    数据更新

    数据范围更新时,注意Gap锁

模糊查询

  • like %要放到后面
  • 全文检索使用solr、ES

    连接查询

  • 注意驱动表的选择

  • 避免产生笛卡尔积

    索引失效问题

  • NULL、not、not in、使用函数,这些都不能走索引

  • 减少使用all

真实案例

MySQL慢查询优化【美团技术团队】