开发者学习笔记【阿里云云原生助理工程师认证(ACA)课程:消息队列和应用工具产品体系-PTS 压测报告解读】
课程地址:https://edu.aliyun.com/course/3112075/lesson/19048
消息队列和应用工具产品体系-PTS 压测报告解读
内容简介:
一、 PST 压测报告场景概览
二、 串联链路业务详情和异常情况
三、 采样日志
四、 压测中的监控系统集成
一、PST 压测报告场景概览
1. PTS 压测结束后,系统会自动获取压测过程中的数据
例如:压测场景指标、业务详情数据、监控详情数据和 API 采样日志等;根据这些数据形成压测报告,供使用者查看和导出。
2. 压测报告的概览页显示了整个压测场景的相关业务指标,压测场
景的相关业务指标说明如下:
(1) 图标一是数据信息区域
展示了压测场景的五个最主要的指标,其中包括请求的成功率和业务的成功率、所有 API 的平均 RT ,也就是平均业务响应时间、请求的平均 TPS 和峰值 TPS 、请求的异常数和业务异常数、 PTS 发起的总请求数这五个指标。
(2) 图标二是施压信息和配置信息区域
当鼠标悬停在施压信息或配置信息上,就会显示当前压测场景的压力分布和压力来源等信息。
(3) 图标三为趋势图
此区域显示了此压测场景中重要指标的关系图和趋势图,包括请求成功率、业务成功率、与 RT 之间的关系和趋势等。
(4) 图标四为业务指标
分别展示了整个场景下各个串联链路和 API 的压测情况和主要业务指标。
其中包括串联链路、API 名称、起始最大 RPS 、总请求、平均 TPS 、请求成功率、业务成功率、平均响应时间等参数,以上就是压测界面概览页的主要内容,需要注意的是,PTS 控制台的压测报告数据只保留30天,超过30天后的采样数据将无法查看,为了避免数据的丢失,请使用者及时将压测报告导出并保存至本地。
二、串联链路业务详情和异常情况
压测报告的明细页签,显示了全场景视图和串联链路中单个 API 的业务详情,包括请求视图、并发数和响应时间等趋势图。
若压测货中有异常产生,则会在异常信息页签中展示全场景中,所有的异常信息和有异常的 API 的信息。
异常信息页签包含如下内容:
1.全场景错误信息,此表格展示了压测场景中出现的错误码、错误码占比、失败数等信息,错误码占比从高到低排列,最多显示三种占比最高的错误码,其余错误码统一归类为 others 。
每种错误码都可以展开查看其具体出现的 API 名称、失败数等信息。单击表格中的 API 名称,可以跳转至明细页签,查看具体的 API 请求视图、响应时间视图等信息。单击表格中的错误码或失败数,可以查看此错误状态的相关采样日志。
2. API 信息,此表格展示了错误场景中所有 API 和相关指标,包括各 API 的请求成功率、失败数、平均 RT 等信息。使用者可以根据自己的需求,在展示指标下拉列表中选择要查看的指标。单机指标中的 API 名称即可跳转至明细页签,查看具体的 API 请求视图、响应时间视图等信息。
单击表格中的失败数,则可以查看对应 API 失败请求的采样日志。时间标签显示的压测的开始时间和结束时间,滑动时间指标的指针可以选择 API 信息统计的时间段。
三、采样日志
1. PTS 在压测过程中,会按照压测流量1%的频率对请求进行采样,
并对这1%的采样请求记录完整的请求信息。压测采样日志主要由压测 API 的请求详情、响应详情和请求核心生命周期的耗时信息三部分组成。使用者可以在压测执行时或者压测报告中随时查看压测采样日志,通过压测采样日志快速定位问题。
2. 需要注意的是,压测日志在 PTS 控制台中只保留30天。因此,使用者也要及时的查看和备份采样日志。在压测采样日志的使用之前,一般会先针对采样日志做筛选和搜索。在选择了一个具体的压测 API 之后,即可根据异常状态、业务状态、响应状态码、什么时间范围、 RT 范围等筛选属性,对采样日志进行筛选。在筛选结果中找到需要阅读的目标日志,点击查看详情即可进入日志详情界面。在日志详情界面中,可以通过切换不同的页签来查看日志的具体信息。其中, General 页签显示了日志的总览信息,以及 request handler request the body response handler response body 等信息。
3. Timing 瀑布流页签则展示了该请求在核心生命周期中的耗时情况。
其中包括一执行 DNS 查询所需要的时间,二建立连接所需要的时间,三发出网络请求所需要的时间,四等待初次响应所需要的时间,此时间将捕获到服务器往返的延迟时间,以及等待服务器传输响应所用的时间,五接收响应数据所用的时间,六复用连接所用的时间作用的时间,需要注意的是,采样日志中的 Timing 仅统计了请求在核心生命周期中的耗时情况,已方便开发者定位问题,并未覆盖所有请求阶段的耗时,如果使用者在压测时添加了云监控或架构监控,在压测过程中或压测报告中就可以查看各项监控指标,以便使用者时刻观察现场负载情况,进行业务合理性判断及异常分析,帮助使用者发现系统性瓶颈。
四、压测中的监控系统集成
1. 在压测报告页面中单击监控详情页签,即可通过选择云基础设施业务分组,按需查看各项具体监控信息。其中最主要的三类基础设施为 ECS 、 RDS 和 SLB 。
(1) 在 ECS 云服务器监控详细页,可以查看整个压测过程中,各个 ECS 的 CPU 使用率、内存使用率、各网卡网络流入速率、磁盘读写速度和 log5。
(2) 在 RDS 云存储监控详情页,可以查看整个压测时间内各 RDS 的连接数使用率、 CPU 使用率、磁盘使用率、 IOPS 和内存使用率。
(3) 在 SLB 监控详情页,可以查看整个压测过程中,各 SLB 的端口新建连接数、端口丢弃连接术、端口流出带宽、端口流入带宽和 QPS 等数据。
2.如果开发者添加了架构监控,则可以在压测报告中选择架构监控页签,在架构监测页签中也可以查看 WAF web 应用防火墙、 DDOS 或弹性公用 IP 的详细信息。
PTS 除了在压测过程中提供了监控数据,也在报告中整合了压测数据,以便在压测结束后复盘压测过程中时,比对业务数据与负载数据的使用,帮助使用者快速定位负载情况、系统是否异常等信息。
监控报告中的明细数据展现了在压测前配置的监控对象数据与压测中的展现形式一致,报告中的数据趋势图区间为整个压测区间。