文档章节

浅谈应用性能测试 PTS

_夜枫
 _夜枫
发布于 2017/07/06 14:04
字数 2190
阅读 31
收藏 0

原文链接

 

我们为什么要进行性能测试?

1. 评估系统的能力。

 

当应用上线有大量用户当问的时候,页面的打开速度直接影响用户体验,进而影响用户的留存。了解用户的真实使用体验,对应用做出针对性的性能评估,有效提升用户体验。

2. 验证系统的稳定性和可靠性。

在整个的网站应用架构体系中,会有一些接口基础服务,它的职责是对外输出一些稳定的查询,一些服务能力,这个时候系统需要有较高的稳定性,比如访问量很多,数据量很大,这个时候就需要关注性能。另外对于一些核心系统,可用性很高,对于性能系统也是非常关键的。

3. 改动了核心应用,担心对链路有影响。

当网站应用比较复杂的时候,比如核心应用被改造了,改造之后我们会担心这对整条核心链路有影响,这个时候也会考虑做性能评估。

性能测试关键指标

性能测试指标通常分为资源指标和系统指标。其中资源指标是指:CPU 使用率、内存使用率、磁盘I/O, 网络带宽等,系统指标是指:并发用户数、在线用户数、平均响应时间和事务成功率等。我们可以从业务方、研发和测试三个角度去看。

通常来说,业务方提出性能指标,比如某段时间内网站可能会带来100万UV, 1000万PV,然后研发将这些指标转化成实际性能指标,比如要实现多少的成交额、交易量等,再根据目标来设定合理的架构策略,最后测试保障这些性能指标。

大家可能会有疑问,业务方给出一个指标,怎么换算成研发可以实现的指标?比如在对接阿里巴巴广告类业务时,业务方说:“这个广告发布以后,会给网站带来100万的UV”,那这个怎么换算成研发需要实现的性能指标?这中间其实存在关联。例如阿里巴巴线上监控会统计通常UV和PV的比例,然后根据放大三倍或者五倍的比例,计算出100个UV对应的PV数,这是一种方式。

另外一种方式就是对业务进行合理的预估。比如像一些平台首页发布的秒杀页面,可能秒杀产品只有100多个,但是引流来的人有100万,这个时候假设这100万用户都会去查看这个页面,再做一些比例放大,然后得出一个相应的PV关系,也可以帮我们做一个推导。当PV数据有了以后,QPS、TPS、RT也是可以换算得出的。

常见的性能测试方法

1. 基准测试法

当我们拿到一个性能测试项目的时候,我们会对这个系统架构做个了解,了解最好的方式是做一个基准测试,先谈谈它的基本情况。所以会去定一个小并发,比如5-10个人的并发,先去测一测,看它的响应时间,然后将此作为我们的基准。

2. 压力测试

如果我们需要快速了解这个系统性能到底是什么情况?我们可以先做一个压力测试,压力测试是为了获取极限性能指标。比如可以设置一个3小时压测场景,每10分钟加10个用户,那到3小时后,可能就是180个用户了。这个时候观察,在压力不断增大过程中系统的表现。

3. 负载测试

这是是为了获取性能拐点,我们叫最佳性能。当达到这个点的时候,系统能力、极限能力是多少?这个通常用来做线上流量评估。

4. 稳定性测试

我们会把用户真实会发生的场景放大3-5倍,然后在线上运行24小时,在这个阶段会发现很多稳定性问题, list回收,Java list回收,一旦回收出现问题,可能会出现内存溢出,这个在日常测试过程中,是很难测出来的,所以用稳定性测试查出这些问题。

5. 容量测试

当我们业务越来越复杂的时候,比如一场大促,应该怎么评估线上的性能?如何去做合理的扩容?这个就属于容量测试范畴。

性能测试工具选择

工欲善其事必先利其器,性能测试时模拟大量负载需要工具帮忙,市面上可供使用的负载工具繁多,如何选择呢?首先我们要明白负载工具是帮助我们来模拟负载的,对于性能测试来说,工具并不是核心,分析、评估、找出性能问题才是核心,这些是主观因素;工具是客户因素,自然要降低其对结果的影响,所以工具选择时我们有几个方面要考虑。

(1)专业、稳定、高效,工业级性能负载工具。

(2)简单易上手,在测试脚本上不用花太多时间。

(3)有技术支持,文档完善,不用在疑难问题上花费时间,集中精力在性能分析上。

(4)要考虑投入产出比。自研或者使用开源不一定比商业工具更省钱,因为要做技术上的投资,时间上的投资。

阿里云的性能测试 PTS

阿里云性能测试(PTS)是全球领先的SaaS性能测试平台,具有强大的分布式压测能力,可模拟海量用户真实的业务场景,让应用性能问题无所遁形。

为什么选择阿里云的性能测试 (PTS)

  • 简单易用 平台提供压测机,无需安装软件;脚本场景监控简单化;1分钟上手,轻轻松松做性能测试
  • 安全可靠 服务高质量容灾,可用性高达99.99%;测试结果真实准确;多种安全防护措施,保障数据安全
  • 场景丰富
    分布式并发压测,施压能力无上限;模拟业务场景,性能缺陷暴露无疑;阿里性能专家在线服务,测试无忧

性能测试(PTS)的功能

  1. 脚本测试
    脚本支持模板和手工编写,模板编写快速创建脚本,手工编写满足具体的业务需求。

  2. 测试场景
    常规模式、梯度模式、目标模式的场景满足各行各业系统业务需求。

  3. 测试报告
    强大的性能日志分析,让性能问题无所遁形。

性能测试(PTS)的应用场景

  1. 非阿里云机器互联网系统性能测试

只要被测系统开通了互联网访问,访问协议为http、https、TCP、UDP就可以使用阿里云性能测试。常见被测系统有:企业官网、简单web应用、图片视频网站应用、手机APP、证券系统、P2P系统、网银系统、考试系统等。

  1. 阿里云机器系统性能测试

部署在阿里云机器上的系统,不管是否开通了互联网访问,都可以使用阿里云性能测试。使用私网压测,不仅减少被测系统带宽测试费用,并且不用担心带宽限制的问题,更能压测出系统的性能瓶颈。

快速上手

免费使用Lite版,三分钟入门
阅读原文 了解优惠

其他解决方案推荐

1. 如何快速构建全渠道零售平台
2. 针对移动互联网&物联网场景的消息服务解决方案
3. 如何高效处理 IOT 中的数据与消息
4. Dubbo的商业化解决方案
5. 面向万物互联的高性能时序数据库 HiTSDB
6. 打造立体化监控体系的最佳实践
7. 全面了解企业级互联网架构和阿里云中间件产品

 

 

原文链接

 

本文转载自:http://click.aliyun.com/m/25118/

共有 人打赏支持
_夜枫
粉丝 10
博文 506
码字总数 0
作品 0
朝阳
后端工程师
私信 提问
经典组合 | PTS + ARMS打造性能和应用诊断利器

服务端的性能测试,尤其是业务性能测试,是用来评估性能容量、诊断性能瓶颈和应用错误,或是验证高可用的能力,以此达到降低成本、提升用户体验的目的。但是,当需要有进一步的定位和刨析时,...

阿里云云栖社区
10/31
0
0
PTS + ARMS打造性能和应用诊断利器

服务端的性能测试,尤其是业务性能测试,是用来评估性能容量、诊断性能瓶颈和应用错误,或是验证高可用的能力,以此达到降低成本、提升用户体验的目的。但是,当需要有进一步的定位和刨析时,...

迷你芊宝宝
11/02
0
0
去中心化交易所 BitShares 浅谈

去中心化交易所 BitShares 浅谈 DBA@Robin2017-12-231 阅读 本文由币乎社区(bihu.com)内容支持计划奖励。 这是「区块链技术指北」的第 11 篇文章。 如果对我感兴趣,想和我交流,我的微信号...

DBA@Robin
2017/12/23
0
0
PTS模拟海量用户访问,助力懂球帝应对日增百万用户

今年夏天刷遍各大社交网络的除了世界杯期间的黑马频出、英雄迟暮、老帅离别、新人辈出,还有那一张张让你禁不住转发的懂球帝海报,海报记录的是时刻,留下的是挥之不去的记忆。 懂球帝于201...

中间件小哥
07/24
0
0
@所有人 这套上云的武功秘籍请收好

在企业面向数字化转型的浪潮中,云早已是关键中的关键,成为企业发展的新引擎。 刚刚,国内领先的云存储企业115科技就宣布将所有数据迁移至阿里云上,整体规模超过100PB,创下了史上最大规模...

阿里云头条
06/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

CockroachDB

百度云上的CockroachDB 云数据库 帮助文档 > 产品文档 > CockroachDB 云数据库 > 产品描述 开源NewSQL – CockroachDB在百度内部的应用与实践 嘉宾演讲视频及PPT回顾:http://suo.im/5bnORh ...

miaojiangmin
25分钟前
1
0
I2C EEPROM驱动实例分析

上篇分析了Linux Kernel中的I2C驱动框架,本篇举一个具体的I2C设备驱动(eeprom)来对I2C设备驱动有个实际的认识。 s3c24xx系列集成了一个基于I2C的eeprom设备at24cxx系列。at24cxx系列芯片包...

yepanl
26分钟前
2
0
spring mvc拦截器,实现统计http请求的后台运行时间

使用两种方式,实现拦截http请求的后台运行时间。 废话不多说直接上代码 /** * Http请求时间统计 * 拦截所有请求 */public class HttpRquestTimeInterceptor extends HandlerIntercepto...

兜兜毛毛
44分钟前
3
0
设计模式之工厂模式

本篇博文主要翻译这篇文章: https://www.journaldev.com/1392/factory-design-pattern-in-java 由于翻译水平有限,自认为许多地方翻译不恰当,欢迎各位给出宝贵的建议,建议大家去阅读原文。...

firepation
59分钟前
5
0

中国龙-扬科
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部