二八原则
“二八原则”,也就是说 80% 的问题都是由 20% 的代码导致的。只要找出这 20% 的位置,你就可以优化 80% 的性能。
- 性能优化不要局限在单一维度的指标上。
- 性能优化并非没有成本。
- 并不是所有的性能问题都值得优化。
- 性能优化的目标,在可接受成本下保证服务状态的可用性,稳定性。
性能优化前的思考
- 是否准确找到性能瓶颈
- 如何判断优化的有效性
- 针对多种同时发生的性能问题,选择优化的对象
- 选择哪种优化方法
如何判断优化的有效性
- 确定性能的量化指标
- 测试优化前的性能指标
- 测试优化后的性能指标
确定性能的量化指标
- 不要局限于单一维度,至少应用程序和系统资源
- 应用程序维度:吞吐量和请求延迟
- 系统资源维度: CPU,MEM,IO(network io, disk io)