后端性能优化全攻略——从 100ms 到 10ms 的实战路径

52 阅读1分钟
  1. 前言

    • 为什么性能优化永远是后端的灵魂话题
    • 从「能跑」到「高性能」的质变
  2. 性能指标体系

    • 吞吐量(TPS / QPS)
    • 响应时间(RT)
    • 并发连接数
    • CPU / 内存 / IO 关键指标
  3. 应用层优化

    • 减少无效对象创建(对象池 / ThreadLocal)
    • 异步化与线程池调优
    • 幂等接口缓存结果
    • 控制日志输出频率
  4. 数据库层优化

    • 批量插入 / 分页查询优化
    • 连接池参数调优(maxActive、minIdle)
    • 慢查询分析与索引重构
    • 表分区与冷热数据分离
  5. 缓存层优化

    • 本地缓存(Caffeine) + 分布式缓存(Redis)
    • 双写一致性与缓存穿透防护
    • 热点 Key 限流 + 预加载机制
  6. 网络与 I/O 优化

    • Netty 异步通信
    • HTTP 长连接与连接复用
    • 压缩与序列化(JSON → Protobuf)
  7. 性能压测与监控

    • 使用 JMeter / k6 进行压测
    • 指标采集:Prometheus + Grafana
    • 分析 GC、内存分配、线程堆栈
  8. 实战案例:优化一个报表导出接口

    • 问题:导出慢、内存溢出、线程阻塞

    • 优化方案:

      • 异步任务 + MQ
      • 分页写入 + EasyExcel
      • 压缩后上传 OSS
    • 效果:单次导出耗时 60s → 7s

  9. 总结

    • 性能优化的三条准则:测量 → 分析 → 调整
    • 优化要有数据支撑,不盲调
    • 最佳实践:监控先行 + 自动报警