从压力测试说起

压力测试是确立系统稳定性的一种测试方法,通常在系统正常运作范围之外进行,以考察其功能极限和隐患。与功能测试不同,压测是以软件响应速度为测试目标的,尤其是针对在较短时间内大量并发用户的访问时,软件的抗压能力。

至于为什么产品或业务系统在通过功能测试后还需要进行压力测试,原因很简单,因为它重要,为什么重要?众所周知,响应速度是用户体验的核心指标之一。 SmartBear 数据表明,如果 Amazon 的加载时间延长1秒,那么一年就会减少16亿美元的营收。用户与网站互动的过程中,如果加载时间超过3秒,57% 的用户会流失。可见,通过压测来优化产品体验和性能是多么的重要。

压测1.0 VS 压测2.0

传统的压测方法通常的做法需要准备大量的环境,如测试的压力机,安装测试工具,录制测试脚本,对服务器不断施加“压力”,通过这种方式来确定系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试,这个阶段我们称之为压测1.0

压测1.0时代的主流压测工具有 LoadRunner , SilkPerformer , Ratinal , QA Load , Jmeter 等等, LoadRunner 为传统压测1.0时代最主要的代表产品


图1.传统的压测现状

传统的测试方法下很难去做到对整个系统去做一次大型的压力测试,这种情况下只能把每个系统独立开来,对他进行性能测试,然后对整个核心系统去做分析,确定系统的短板,对短板进行压力测试

通常需要用预估的方式,业务部门估算今年的交易额,应用部门估算,网络部门估算,基础架构部门估算。最后的结果就是如果需要1000台服务器,那么就准备1500台。如果需要5 G 的 CDN 带宽,那么就准备7.5 G 。几乎所有资源都多准备50%。

压测1.0时代的压测缺点很明显

  • 测试过程缓慢,周期过长
  • 并非聚焦于全球客户的体验
  • 非常昂贵的授权费用及硬件投入
  • 为实验室测试而设计,对生产或线上环境无能为力
  • 不能针对当今复杂的应用及架构提供实时的反馈

基于云计算的全链路压力测试我们称之为云压测,这个阶段我们叫压测2.0。云压测通过遍布云端的压力模拟服务器,来制造“真实用户访问”,这个过程可以覆盖到真实交易系统的全链路,全业务测试系统,并且革命性的使用云资源这种轻属性资产,对几乎来自全世界互联网和移动互联网的压力进行测试。云压测模拟测试完全还原真实用户网络访问状况


图2.“云压测+ APM ”进入压测2.0时代

当产生压测需求时,我们布置在各主流云厂商(AWS、阿里云、Azure、青云、腾讯云、金山云、UCloud等等)的压测虚机自动下发压测脚本,进行云端托管式部署云端压测机启动,对用户系统进行压测。同步压测,同步产出压测数据。

利用云计算优势,当需要进行模拟大规模用户访问时,只要多开云主机就能实现,需要模拟100万的用户访问,再开100台云主机。

云压测的准备时间基本上就是由云主机启动时间来决定,这在压测1.0时代是根本不可能实现的。云压测是在云主机发起的,因此反映了真实的用户访问环境,而压测1.0时代的传统压测方式则必须在内网的模拟环境下进行。

压测2.0时代有点同样明显。

  • 迅速部署
  • 实时统计
  • 真实世界的规模和模拟
  • 分布式的用户
  • 高效且持续
  • 除去了硬件投入

压测1.0时代的 LoadRunner VS 云压测

比较维度 LoadRunner 云压测
采用技术 研发于90年代,基于c 生于21世纪,基于 Java 及大数据
测试创建 需要 c 编程,测试门槛较高 全可视化操作,上手快
部署方式 纯内网,基于物理服务器 内外网兼顾,云,虚机,物理机
部署时间 长,几周或几个月 很短,数分钟或数小时,测试更频繁
部署费用 昂贵,硬件,人员,时间,其他 便宜,压侧端可全云托管,按小时分钟计费
测试规模 小,一般不超过2000并发规模 可大可小,从100到1千万
统计报表 很有限,非实时,依赖后期数据处理 TB级实时汇聚显示,即测即发现问题
云压测 + APM = 端到端的性能优化解决方案


图5.云压测 + APM 典型应用场景

与压测1.0时代只关注于后端性能不同,云压测关注前端和后端性能,从前端的不同物理位置、不同运营商链路、宽带、窄带、带宽、 CDN 、防火墙、负载均衡,到后端的应用软件、数据库、硬件资源、系统配比等,云压测在测试环境中还原真实业务环境

云压测和 APM 结合,全链路全业务接口压力测试,全面覆盖前后端所有环节真正实现端到端性能优化解决方案,全方位提升用户体验。

OneAPM 为更多企业提供全栈式的性能管理以及 IT 运维管理服务。阅读更多文章,请访问 OneAPM 官方技术博客

点击此处,免费申请 OneAPM 云压测产品试用

压测2.0:云压测 + APM = 端到端压测解决方案的更多相关文章

  1. 【阿里云产品公测】阿里云ACE部署通用完整教程及评测

    [阿里云产品公测]阿里云ACE部署通用完整教程及评测 作者:阿里云用户bailimei ACE应该是目前在公测的服务中应用最广泛的一项服务.在公测云引擎ACE前曾使用过新浪SAE,而ACE给我的最初印 ...

  2. DEF2015丨腾讯优测携专业云测试服务,亮相中国(成都)数字娱乐节

    近年来,随着APP的大量涌出,“软件质量保证”这个话题又被拉进了人们的视野.作为备受用户信赖的移动云测试平台,腾讯优测受邀参加11月19日-21日由GMGC主办的中国(成都)数字娱乐节(简称DEF20 ...

  3. Axure 8.1.0.3377 激活码 授权码 (亲测有效)

    适用版本 Axure 8.1.0.3377 zdfans.com gP5uuK2gH+iIVO3YFZwoKyxAdHpXRGNnZWN8Obntqv7++FF3pAz7dTu8B61ySxli 亲测 ...

  4. 做一个能对标阿里云的前端APM工具(下)

    上篇请访问这里做一个能对标阿里云的前端APM工具(上) 样本多样性问题 上一小节中的实施方案是微观的,即单次性的.具体的.但是从宏观上看,我需要保证性能测试是公允的,符合大众预期的.为了达到这种效果, ...

  5. 在OneThink(ThinkPHP3.2.3)中整合阿里云OSS的PHP-SDK2.0.4,实现Web端直传,服务端签名直传并设置上传回调的实现流程

    在OneThink(ThinkPHP3.2.3)中整合阿里云OSS的PHP-SDK2.0.4,实现本地文件上传流程 by shuijingwan · 2016/01/13 1.SDK安装 github ...

  6. Linux的压缩解压命令快速上手——解压篇

    在Linux系统中,压缩文件通常是先将若干文件(包括目录)打包成一个tar文件,然后再调用压缩程序将tar文件压缩成相应的压缩包,这也就是为什么Linux系的压缩包的后缀通常都是像tar.gz,tar ...

  7. tar解压某个目录 tar解压某个指定的文件或者文件夹

    tar解压某个目录 tar解压某个指定的文件或者文件夹 发布时间:2017-05-30 来源:服务器之家   1. 先查看压缩文档中有那些文件,如果都不清楚文件内容,然后就直接解压,这个是不可能的 使 ...

  8. 一张图看懂阿里云网络产品【十五】IPv6 解决方案

    摘要: 作为国内首家全面支持IPv6的云厂商,阿里云12月再次推出全栈IPv6解决方案,核心产品已全面支持,协助客户小时/天级即可完成IPv6 访问.方案成功历经优酷.淘宝.天猫.双十一考验.SLB ...

  9. 云服务器ECS挖矿木马病毒处理和解决方案

    云服务器ECS挖矿木马病毒处理和解决方案 最近由于网络环境安全意识低的原因,导致一些云服务器ECS中了挖矿病毒的坑. 总结了一些解决挖矿病毒的一些思路.由于病毒更新速度快仅供参考. 1.查看cpu爆满 ...

随机推荐

  1. xcode4.5应用程序本地化

    我们在开发一款APP的时候,总是会涉及应用程序国际化的事情,用ios里专业术语叫做本地化,其实都是一个意思,简而言之就是不同的系统语言,显示不同的应用名称.字符串名称.图片名称.等等,除了代码,ios ...

  2. ios 异步处理耗时操作

    dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); dispatch_asy ...

  3. 透过数据看现实,漫谈实况FIFA的这些年

    虽然,只是个普通玩家,虽然带了一点青春,一点爱.虽然,有那么些怀念 ~ 好吧,不浪费篇幅伪伪的煽情,直插主题.(很长且多图,更多讲述的是实况FIFA间的你来我往,互相赶超的故事.本想全面展开描述细节, ...

  4. 人脸检测的API例子

    package cliu.TutorialOnFaceDetect; /* * MyImageView.java * Download by http://www.codefans.net * [AU ...

  5. 数组链表下标指针map list

    1.时间复杂度 (1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道.但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间 ...

  6. 推荐几款web站点JS(JQeury)图表(饼图,柱图,线图)

    一 Google Chart Tools 官网:https://developers.google.com/chart/ 谷歌图表工具提供了一个完美的方式形象化您的网站上的数据.从简单到复杂的层次结构 ...

  7. scjp考试准备 - 1 - 循环控制

    判断如下代码最后的执行结果. public class Breaker{ static String o = ""; public static void main(String[ ...

  8. LoadRunner - 结果分析 / Result Analysis

    LoadRunner 最重要也是最难理解的地方--测试结果的分析.其余的录制和加压测试等设置对于我们来讲通过几次操作就可以轻松掌握了.针对 Results Analysis 我用图片加文字做了一个例子 ...

  9. MVC3+中 ViewBag、ViewData和TempData的使用和区别

    在MVC3开始,视图数据可以通过ViewBag属性访问,在MVC2中则是使用ViewData.MVC3中保留了ViewData的使用.ViewBag 是动态类型(dynamic),ViewData 是 ...

  10. [工具]IL Mapper2(C# -> IL 转换器)

    下载地址:IL_Mapper2_exe.zip 源文件:IL_Mapper2_src.zip 简介 此工具可以直接把C#代码转换成IL代码查看,省去编译和手动操作ildsam的繁琐.希望能对想研究IL ...