服务端的性能测试,尤为是业务性能测试,是用来评估性能容量、诊断性能瓶颈和应用错误,或是验证高可用的能力,以此达到下降成本、提高用户体验的目的。可是,当须要有进一步的定位和刨析时,这类性能测试就会显得有点捉襟见肘。本文将介绍PTS + ARMS的经典组合,在性能容量评估、性能瓶颈诊断和应用错误诊断方面的实践方案。前端
脱胎于阿里全链路压测平台,是简单、直接的云化性能测试工具,可帮助用户轻松模拟海量访问的真实业务场景,支持所需资源随时发起,免去搭建和维护成本。数据库
是一款APM类的全链路(Tracing)监控产品。用户可基于ARMS的前端、应用和自定义监控,快速构建实时的业务监控能力。后端
PTS + ARMS 组成的经典压测监控方案,不只已服务于淘宝、天猫等阿里巴巴集团内部用户,也正应用于其余多个行业,包括电子商务、互联网金融、游戏、新媒体、政府及大型央企等,支持新版本性能基线测试、大促场景测试和线上容量规划等场景。浏览器
以某知名在线教育平台为例,用户但愿以最小的成本应对常态化的选课高峰,同时,在流量峰值的状况下,用户体验不能降低。服务器
根据木桶原理,容量最小的系统也就是木桶最短的板决定了站点的能力。用户须要作的是识别短板,经过调整长短板之间的机器配比达到拉平系统水位的目的,那么即便是一样数量的机器也能够提供更大的业务吞吐量,甚至不用额外扩容。cookie
经过PTS集成云监控和ARMS监控,不只能够准确判断特定配置下的系统性能容量瓶颈,同时还能定位性能基线的配置短板,如系统性能、数据库瓶颈、代码问题等。性能容量评估分为如下3个步骤:运维
除了调整容量配比,PTS + ARMS还能够经过探测和识别系统瓶颈点,以提升站点性能的方式,进一步提高一样机器数量状况下的总体容量水位。工具
以在线教育平台上经过浏览器登陆为例,最多见的一个操做流程是:登陆 -> 根据用户的属性信息列出可选的课程列表 -> 用户经过查询条件进行准确的查询或者筛选 -> 选中最终的课程进行提交。性能
这个流程,做为一个事务,是有严格的前后顺序的。在PTS中就是一个串联链路。借助PTS对cookie的友好支持,整个链路均可以经过PTS配置出对应的压力测试流量,并借助ARMS进行监控,从而观察、分析性能瓶颈。测试
此外,用户还能够经过PTS发现接口调用性能瓶颈拐点,一键跳转到ARMS中,并基于具体线程刨息,发现具体代码栈内的性能瓶颈拐点,从而为优化代码性能,提供代码栈级别的证据。
性能瓶颈诊断分为如下3个步骤:
诊断应用错误是企业级互联网应用正式上线前的另外一大场景。这类错误虽然通常不会直接影响调用耗时从而形成性能瓶颈,可是仍然会因为业务错误引起糟糕的用户体验。
应用在基线性能下除了耗时之外,一般还可能被返回各种调用错误,典型的有:
经过PTS + ARMS的经典组合,能够在压力增长时,有效发现以上的各种错误。
此外,基于PTS的施压侧监控和多维度监控特性,还能够经过ARMS集成关联到具体的错误异常详情,定位到具体错误抛出的详细代码,从而以指数级别提升压测场景下的接口错误诊断效率,错误接口诊断分为如下3个步骤:
可见,PTS经过集成ARMS的监控能力,可将关键的服务端性能指标整合到压测的总体监控中,以达到更快速、更便捷地识别问题的目的,下降用户的运维负担。
http://click.aliyun.com/m/1000020293/
双十一广告:阿里云双十一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/