Week 07 总结

用户头像
鱼_XueTr
关注
发布于: 2020 年 07 月 22 日
Week 07 总结

性能测试:

  • 是性能优化的前提和基础

  • 性能优化结果的检查

  • 性能优化结果的度量标准



  1. 网站性能指标

  • 响应时间

  • 并发数

  • 吞吐量

  • 性能计数器



  1. 吞吐量

  • 单位时间内系统处理的请求数量,体现系统的处理能力

  • 以请求数/秒或页面数/秒来衡量,也可以用访问人数/天,或处理业务数/小时

  • TPS:每秒事务数

  • HPS:每秒HTTP请求数

  • QPS:每秒查询数

  • 吞吐量=(1000/响应时间ms) x 并发数



  1. 性能计数器

  • 描述服务器或操作系统性能的一些数据指标

  • 包括System Load, 对象与线程数、内存使用、CPU使用、磁盘与网络I/O指标



  1. 性能测试方法

  • 性能测试

  • 负载测试

  • 压力测试

  • 稳定性测试



  1. 数据隔离

  • 逻辑隔离

  • 虚拟隔离

  • 物理隔离



  1. 软件性能优化的两个基本原则

  • 你不能优化一个没有测试的软件

  • 你不能优化一个你不了解的软件



  1. 性能优化的一般方法

  • 性能测试,获得性能指标

  • 指标分析,发现性能与资源瓶颈点

  • 架构与代码分析,寻求性能与资源瓶颈关键所在

  • 架构与代码优化,优化关键技术点,平衡资源利用

  • 性能测试,进入性能闭环



  1. 系统性能优化的分层思想

  • 机房与骨干网络性能优化

  • 服务器与硬件性能优化

  • 操作系统性能优化

  • 虚拟机性能优化

  • 基础组件性能优化

  • 软件架构性能优化

  • 软件代码性能优化



  1. 软件架构性能优化三板斧

  • 缓存

  • 异步

  • 集群



  1. 软件代码性能优化

遵循面向对象的设计原则与设计模式编程,很多时候程序性能不好不是因为性能上有什么技术挑战,仅仅就是因为代码写的太烂了。

  • 并发编程,多线程与锁

  • 资源复用,线程池与对象池

  • 异步编程,生产者消费者

  • 数据结构,数组,链表,hash表,树



  1. 程序运行时架构

  • 程序是静态的

  • 程序运行起来以后,被称作进程。



  1. 进行的运行期状态

  • 运行

  • 就绪

  • 阻塞



  1. 临界区

多个线程访问共享资源的这段代码被称作临界区,解决线程安全问题的主要方法是使用锁,将临界区的代码加锁,只有获得锁的线程才能执行临界区代码。



  • 偏向锁

  • 轻量级锁

  • 重量级锁

  • 总线锁与缓存锁

  • 公平锁与非公平锁

  • 可重入锁

  • 独享锁/互斥锁 共享锁 读写锁

  • 乐观锁 悲观锁

  • 分段锁

  • 自旋锁



用户头像

鱼_XueTr

关注

还未添加个人签名 2019.04.19 加入

还未添加个人简介

评论

发布
暂无评论
Week 07 总结