week7- 作业二:根据当周学习情况,完成一篇学习总结

用户头像
关注
发布于: 2020 年 12 月 07 日

性能优化

一、性能测试:系统性能的主要技术指标

1、性能测试-主观视角、客观视角

2、性能测试指标-响应时间、并发数(用户并发数、在线用户数、系统用户数)、吞吐量(吞吐量 = ( 1000/响应时间ms) * 并发数)、性能计数器等;

3、性能测试方法:性能测试、负载测试、压力测试、稳定性测试;

二、全链路压测的挑战

1、压测数据如何构造-数据构造;

2、压测环境,是真实环境模拟,怎么样对线上无影响-数据隔离(逻辑隔离、虚拟隔离、物理隔离);

3、大型促销活动所带来的巨大流量怎么制作出来-流量构造;

4、淘宝全链路压测系统的构建

5、淘宝全链路压测系统的使用

三、性能优化:系统性能优化的分层思想;

1、性能压测的两个基本原则

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

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

2、性能优化的一般方法

2.1、性能测试,获得性能指标

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

2.3、架构与代码分析,寻找性能与资源瓶颈关键梭子啊;

2.4、架构与代码及其他优化,优化关键技术点,平衡资源利用;

2.5、性能测试,进入性能优化闭环;

3、系统性能优化的分层思想

3.1、机房与骨干网络性能优化

3.2、服务器与硬件性能优化

3.3、操作系统性能优化

3.4、虚拟机性能优化

3.5、基础组件性能优化

3.6、软件架构性能优化

3.7、软件代码性能优化

四、操作系统:计算机如何处理成百上千的并发请求?

1、程序运行时架构

2、操作系统多任务运行环境

3、进程的运行期状态:运行、就绪、阻塞

4、进程 VS 线程

5、Java Web应用多线程运行时视图

6、线程安全、临界区

7、阻塞导致高并发系统崩溃

五、锁:锁原语CAS与各类锁

1、锁原语-CAS

2、Java通过CAS原语在对象头中修改Mark Word实现加锁

3、锁的升级 偏向锁--->轻量级锁(CAS、自旋)--->重量级锁(阻塞)

4、多CPU下情况下的锁-总线锁(内存总线)和缓存锁

5、锁的分类

5.1、公平锁(重量级锁,等待队列)和非公平锁(轻量级锁,CPU调度)

5.2、可重入锁

5.3、独享锁/互斥锁、共享锁、读写锁

5.4、乐观锁和悲观锁

5.5、分段锁

六、案例:异步并发分布式编程框架akka



用户头像

关注

还未添加个人签名 2019.02.26 加入

还未添加个人简介

评论

发布
暂无评论
week7-作业二:根据当周学习情况,完成一篇学习总结