PTS + ARMS打造性能和应用诊断利器

摘要: 服务端的性能测试,尤其是业务性能测试,是用来评估性能容量、诊断性能瓶颈和应用错误,或是验证高可用的能力,以此达到降低成本、提升用户体验的目的。但是,当需要有进一步的定位和刨析时,这类性能测试就会显得有点捉襟见肘。
服务端的性能测试,尤其是业务性能测试,是用来评估性能容量、诊断性能瓶颈和应用错误,或是验证高可用的能力,以此达到降低成本、提升用户体验的目的。但是,当需要有进一步的定位和刨析时,这类性能测试就会显得有点捉襟见肘。本文将介绍pts + arms的经典组合,在性能容量评估、性能瓶颈诊断和应用错误诊断方面的实践方案。
性能测试pts(performance testing service)脱胎于阿里全链路压测平台,是简单、直接的云化性能测试工具,可帮助用户轻松模拟海量访问的真实业务场景,支持所需资源随时发起,免去搭建和维护成本。
业务实时监控服务arms (application real-time monitoring service)是一款apm类的全链路(tracing)监控产品。用户可基于arms的前端、应用和自定义监控,快速构建实时的业务监控能力。
适用行业pts + arms 组成的经典压测监控方案,不仅已服务于淘宝、天猫等阿里巴巴集团内部用户,也正应用于其他多个行业,包括电子商务、互联网金融、游戏、新媒体、政府及大型央企等,支持新版本性能基线测试、大促场景测试和线上容量规划等场景。
典型应用场景评估性能容量
以某知名在线教育平台为例,用户希望以最小的成本应对常态化的选课高峰,同时,在流量峰值的情况下,用户体验不能下降。
根据木桶原理,容量最小的系统也就是木桶最短的板决定了站点的能力。用户需要做的是识别短板,通过调整长短板之间的机器配比达到拉平系统水位的目的,那么即使是同样数量的机器也可以提供更大的业务吞吐量,甚至不用额外扩容。
通过pts集成云监控和arms监控,不仅可以准确判断特定配置下的系统性能容量瓶颈,同时还能定位性能基线的配置短板,如系统性能、数据库瓶颈、代码问题等。性能容量评估分为以下3个步骤:
使用pts快速构建高仿真业务压测;
通过pts控制台一站式观察压测发起侧(客户侧)及服务侧(云监控)的端到端全监控,了解高压下的业务表现和各核心系统的性能水位情况;
再通过arms集成,快速找到应用瓶颈点,列出接口快照,结合系统性能诊断慢快照具体耗时原因,如系统性能,慢sql,或其他代码问题。
诊断性能瓶颈
除了调整容量配比,pts + arms还可以通过探测和识别系统瓶颈点,以提高站点性能的方式,进一步提升同样机器数量情况下的整体容量水位。
以在线教育平台上通过浏览器登录为例,最常见的一个操作流程是:登录 -> 根据用户的属性信息列出可选的课程列表 -> 用户通过查询条件进行准确的查询或者筛选 -> 选中最终的课程进行提交。
这个流程,作为一个事务,是有严格的先后顺序的。在pts中就是一个串联链路。借助pts对cookie的友好支持,整个链路都可以通过pts配置出对应的压力测试流量,并借助arms进行监控,从而观察、分析性能瓶颈。
此外,用户还可以通过pts发现接口调用性能瓶颈拐点,一键跳转到arms中,并基于具体线程刨息,发现具体代码栈内的性能瓶颈拐点,从而为优化代码性能,提供代码栈级别的证据。
性能瓶颈诊断分为以下3个步骤:
使用pts快速构建压测并一站式观察相关应用的接口调用耗时,寻找性能瓶颈点;
使用arms观察对应应用的接口耗时,并找到对应的慢接口调用的线程进行刨析;
通过线程刨析找到对应接口的线程快照,分析性能瓶颈。
诊断应用错误
诊断应用错误是企业级互联网应用正式上线前的另一大场景。这类错误虽然一般不会直接影响调用耗时从而造成性能瓶颈,但是仍然会由于业务错误引发糟糕的用户体验。
应用在基线性能下除了耗时以外,通常还可能被返回各类调用错误,典型的有:
超时错误(timeout):当后端服务来不及响应时,可能会在客户端造成timeout 错误;
熔断错误:该类错误主要是被各类熔断组件触发(如sentinal), 保护后端应用性能;
其他系统组件引起的错误:如性能超载引起的ioexception等。
通过pts + arms的经典组合,可以在压力增加时,有效发现以上的各类错误。
此外,基于pts的施压侧监控和多维度监控特性,还可以通过arms集成关联到具体的错误异常详情,定位到具体错误抛出的详细代码,从而以指数级别提高压测场景下的接口错误诊断效率,错误接口诊断分为以下3个步骤:
使用pts,观察压测增加时是否发生业务异常/错误;
使用arms,观察对应应用的总体错误调用,判断问题点。
打开错误的异常详情,通过异常的快照详情判断根系错误根因。
可见,pts通过集成arms的监控能力,可将关键的服务端性能指标整合到压测的整体监控中,以达到更快速、更便捷地识别问题的目的,降低用户的运维负担。
阿里云双十一1折拼团活动:已满6人,都是最低折扣了
【满6人】1核2g云服务器99.5元一年298.5元三年 2核4g云服务器545元一年 1227元三年
【满6人】1核1g mysql数据库 119.5元一年
【满6人】3000条国内短信包 60元每6月
参团地址:http://click.aliyun.com/m/1000020293/
原文链接

汽车USB 2.0和5V Type-C解决方案用于充电和强大的数据线保护
新式降压转换设计并实现PWM升压转换器
自动驾驶领域第三个超级独角兽出现,那么哪家中国公司会是下一个呢
Amazfit在印度市场推出GTS 2 mini智能手表
Mach-NX:可信系统的基石
PTS + ARMS打造性能和应用诊断利器
颜色传感器的类型有哪些 如何选择颜色传感器
���˲���������,Poor posture reminder
中国联通新一代智慧客服平台正式启用
2019年上半年中国工业和通信业的发展情况介绍
AMDR7 3700X和英特尔i9-9900K哪个最好
英特尔X系列亮相台北电脑展 第八代处理器正在研发 性能提升30%
专家教您如何挑选移动电源
人工智能能否促进有创造力的工作?
新唐科技NUC505 系列简介
什么叫3g时代
大唐恩智浦进行ISO 26262过程认证
安森美半导体针对混合电动汽车/电动汽车的功能电子化方案
二进制同步计数器74LS161引脚图及功能表(管脚图)
家用电器安规和EMC常用标准