架构师训练营 week7 - 学习总结
性能测试视角
主观视角:用户感受到的性能
客观视角:性能指标衡量得性能
常用性能测试指标
响应时间
并发数
吞吐量(TPS、HPS、QPS):吞吐量(TPS/QPS)=(1000/响应时间 ms) *并发数
性能计数器:System Load,线程数,进程数,CPU,内存、磁盘、网络使用率。
常用性能测试方法
性能测试
负载测试
压力测试
稳定性测试
性能优化的一般流程方法
1、先通过性能测试,获得性能指标
2、通过指标分析,发现性能与资源瓶颈点
3、通过架构与代码分析,寻找性能与资源瓶颈点关键
4、通过对架构与代码优化,优化关键技术点。平衡资源利用。
5、再次进行性能测试,看是否达到预期。
系统性能优化涉及的层面
机房与骨干网络性能优化(异寺多数据中心、专线网络、自建 CDN)
服务器与硬件性能优化(使用更优的 CPU、磁盘、内存、网卡、对软件性能的优化可能是数量级的提升,有时候超过对架构和代码的优化,前提是需要通过性能测试找到瓶颈。例如 1G 网卡与 10G 网卡的区别)
操作系统性能优化
虚拟机(JVM)性能优化
基础组件(升级第三方 jar)性能优化
软件架构性能优化(缓存、异步、集群三板斧)
软件代码性能优化(并发编程、多线程、锁的合理使用;资源复用:线程池、对象池;异步编程:生产与消费者模式;数据结构:合理的使用数组、链表、hash 表、树)
评论