写点什么

架构 7 周

用户头像
FreeOcean
关注
发布于: 2021 年 01 月 11 日

7 周笔记

性能优化

1.性能测试主要指标

响应时间、并发数、吞吐量、性能计数器(系统负载、线程数、进程数、CPU、内存、磁盘、网络使用率)

2.性能优化的一般方法

步骤一:性能测试,获得性能指标

步骤二:指标分析,发现性能与资源瓶颈点

步骤三:架构与代码分析,寻找性能与资源瓶颈的关键

步骤四:架构与代码优化,优化关键技术点,平衡资源利用

步骤五:性能测试,进入性能优化闭环

3.系统性能优化分层

机房与骨干网络

服务器与硬件

操作系统

虚拟机

基础组件

软件架构

软件代码


练习

 

1.  性能压测的时候,随着并发压力的增加,系统响应时间和吞吐量如何变化,为什么?




一个系统吞吐量通常由 QPS(TPS)、并发数两个因素决定,每套系统这两个值都有一个相对极限值,在应用场景访问压力下,只要某一项达到系统最高值,系统的响应时间、吞吐量就上不去了,如果压力继续增大,系统的吞吐量反而会下降,原因是系统超负荷工作,上下文切换、内存等等其它消耗导致系统性能下降。

 

一个系统的吞度量(承压能力)与 request 对 CPU 的消耗、外部接口、IO 等等紧密关联。单个 reqeust 对 CPU 消耗越高,外部系统接口、IO 影响速度越慢,系统吞吐能力越低,反之越高。

系统吞吐量几个重要参数:QPS(TPS)、并发数、响应时间

QPS(TPS):每秒钟 request/事务数,一个系统吞吐量通常由 QPS(TPS)、并发数两个因素决定,每套系统这两个值都有一个相对极限值,在应用场景访问压力下,只要某一项达到系统最高值,系统的响应时间、吞吐量就上不去了,如果压力继续增大,系统的吞吐量反而会下降,原因是系统超负荷工作,上下文切换、内存等等其它资源消耗导致系统性能下降。

以图表场景为例:

从 a 到 b,随着并发数的提升,系统吞吐量也随着提升;这个期间,系统响应时间基本稳定。

从 b 到 c,系统吞吐量还在继续提升,但提升速度放缓,系统响应时间随之变长。

从 c 到 d,表示并发数到达了系统最大负载点,此时增加并发数,资源消耗过大,导致系统响应时间越来越长,吞吐量也就随着降低。

当到达系统崩溃点 d,并发数过大导致系统资源耗尽,响应时间非常慢,根据公式 吞吐量=(1000/响应时间 ms)*并发数,系统的吞吐量断崖下降。

 

一个系统的吞度量(承压能力)与 request 对 CPU 的消耗、外部接口、IO 等等紧密关联。单个 reqeust 对 CPU 消耗越高,外部系统接口、IO 影响速度越慢,系统吞吐能力越低,反之越高。

系统吞吐量几个重要参数:QPS(TPS)、并发数、响应时间

QPS(TPS):每秒钟 request/事务数量

并发数:   系统同时处理的 request/事务数

响应时间:  一般取平均响应时间

QPS(TPS)= 并发数/平均响应时间

 

系统响应时间要素

系统一次调用的响应时间跟项目计划一样,也有一条关键路径,这个关键路径是就是系统影响时间;关键路径是有 CPU 运算、IO、外部系统响应等等组成。

 

用户头像

FreeOcean

关注

还未添加个人签名 2018.12.31 加入

还未添加个人简介

评论

发布
暂无评论
架构7周