文档章节

WebAPI压力测试

mac_zhao
 mac_zhao
发布于 2015/01/20 18:36
字数 1291
阅读 1951
收藏 13

TTFB Avg: Time To first Byte Average,The total time,in milliseconds,from the initial request until the first byte of data is received on the client ,this is an average over ther test.

具体而言,评价WEB应用有以下几个指标: 

  Number of hits:测试间隔内虚拟用户点击页面的总次数 

  Requests per second:每秒客户端的请求次数 

  Threads:线程数,即虚拟用户并发量 

  Socket Errors Connect:Socket错误连接次数 

  Socket Errors Send:Socket错误发送次数 

  TTFB Avg:从第一个请求发出到测试工具接收到服务器应答数据的第一个字节之间的平均时间 

  TTLB Avg:从第一个请求发出到测试工具接收到服务器应答数据的最后一个字节之间的平均时间
 

  • TPS : Time passed in TestCase / CNT / 1000, i.e. a TestCase that has run for 10 seconds hand handled 100 request will get a TPS of 10
  • BPS : Bytes / Time passed / 1000, i.e. a TestCase that has run for 10 seconds and handled 100000 bytes will get a BPS of 10000.
  • 响应时间,是指系统对用户操作的反馈时间。

对于普通的web网站来说,一个普遍被接受的响应时间标准是2/5/10,即用户对2秒钟以内的的响应时间非常满意,对于5秒钟以内的响应时间基本满意,对于10秒钟以上的响应时间则无法接受.

  • 吞吐量(throughput)

吞吐量,是指单位时间内流经被测系统的数据流量,一般单位为b/s,即每秒钟流经的字节数。吞吐量是大型门户网站以及各种电子商务网站衡量自身负载能力的一个很重要的指标,一般吞吐量越大,系统单位时间内处理的数据越多,系统的负载能力也越强。

  • 并发(concurrency)

并发,是指多个同时发生的操作。并发和并行不是一个概念,并发是同时发生,并行是同步运行。

  • 稳定性测试(reliability testing)

稳定性测试,也叫可靠性测试(reliability testing),是指连续运行被测系统,检查系统运行时的稳定程度。我们通常用mtbf(mean time between failure,即错误发生的平均时间间隔)来衡量系统的稳定性,mtbf越大,系统的稳定性越强。稳定性测试的方法也很简单,即采用24*7(24小时*7天)的方式让系统不间断运行,至于具体运行多少天,是一周还是一个月,视项目的实际情况而定。

  • 负载测试(load testing)

负载测试,是性能测试的一种,通常是指让被测系统在其能忍受的压力的极限范围之内连续运行,来测试系统的稳定性。 
可以看出负载测试和稳定性测试比较相似,都是让被测系统连续运行,区别就在于负载测试需要给被测系统施加其刚好能承受的压力,比如我们还是测试163邮箱系统的登录模块,我们先用1个用户登录,再用两个用户并发登录,再用5个,10个…在这个过程中,我们每次都需要观察并记录服务器的资源消耗情况(可以通过任务管理器中的性能监视器或者控制面板中的性能监视器),当发现服务器的资源消耗快要达到临界值时(比如cpu的利用率90%以上,内存的占有率达到80%以上),停止增加用户,假如现在的并发用户数为20,我们就用这20个用户同时多次重复登录,直到系统出现故障为止。 
负载测试为我们测试系统在临界状态下运行是否稳定提供了一种办法。

  • 压力测试(stress testing)

压力测试,是性能测试的一种,通常是指持续不断的给被测系统增加压力,直到将被测系统压垮为止,用来测试系统所能承受的最大压力。 
比如我们不断增加并发的登录用户数,20,30,50…比如,当增加到70个用户并发登录时,系统崩溃了,我们就可以知道163邮箱所能承载的最大登录并发数为70个左右。

我们把上面的思路整理一下,编写一下163邮箱登录模块性能测试用例,供大家参考(假设163邮箱要求登录的时间最多不超过10秒,测试环境略)

关于性能测试的分类,可以举一个比较通俗的例子方便大家理解: 
假设一个人很轻松就能背1袋米,背2袋米很吃力,最多就能背3袋米 
稳定性测试-我让他背1袋米,但是让他去操场上跑圈,看多久累倒。 
负载测试-我让他背2袋米去操场上跑圈,看多久累倒。 
压力测试-我让他背2袋米,3袋米,4袋米…发现他最多就能背3袋

© 著作权归作者所有

mac_zhao
粉丝 42
博文 249
码字总数 304671
作品 0
普陀
程序员
私信 提问
net core Webapi 总目录

目录 博客目录 代码地址 博客目录 net core Webapi基础工程搭建(一)——开发工具及环境 net core Webapi基础工程搭建(二)——创建工程 net core Webapi基础工程搭建(三)——在线接口文...

AprilBlank
08/01
0
0
ASP.NET 5 使用 TestServer 进行单元测试

之前如果对 ASP.NET WebAPI 进行单元测试(HttpClient 发起请求,并且可调试 WebAPI),一般采用 Owin 的方式,具体参考:《开发笔记:用 Owin Host 实现脱离 IIS 跑 Web API 单元测试》 示例...

技术小哥哥
2016/12/14
0
0
小心服务器内存居高不下的元凶--WebAPI服务

内存这东西虽然便宜,白菜价,但实际在我们的互联网环境中还是非常珍贵的资源,谁叫它不能像硬盘似的,随便弄一块就有好几百G,而没内存就准备挂吧! 话说回来,这次分享的主要是我们在使用调...

WilsonHuang
2013/12/23
1K
1
asp.net core webapi/website+Azure DevOps+GitHub+Docker

asp.net core webapi/website+Azure DevOps+GitHub+Docker 新春开篇作,主要写一下关于asp.net core web/api 2.2 项目借助实现CI 项目源码在GitHub里,点击这里获取 下面是录了一些视频,视频...

topbrids
02/05
0
0
FastDev/OF.DistributeService

#OF.DistributeService 一、基本描述 OF.DistributeService 是一个基于Web服务的框架,基于接口方式进行服务声明,使用zookeeper进行服务的注册和订阅。调 用方采用 ILEmit 方式生成服务接口...

FastDev
2016/05/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

64.监控平台介绍 安装zabbix 忘记admin密码

19.1 Linux监控平台介绍 19.2 zabbix监控介绍 19.3/19.4/19.6 安装zabbix 19.5 忘记Admin密码如何做 19.1 Linux监控平台介绍: 常见开源监控软件 ~1.cacti、nagios、zabbix、smokeping、ope...

oschina130111
今天
12
0
当餐饮遇上大数据,嗯真香!

之前去开了一场会,主题是「餐饮领袖新零售峰会」。认真听完了餐饮前辈和新秀们的分享,觉得获益匪浅,把脑子里的核心纪要整理了一下,今天和大家做一个简单的分享,欢迎感兴趣的小伙伴一起交...

数澜科技
今天
7
0
DNS-over-HTTPS 的下一代是 DNS ON BLOCKCHAIN

本文作者:PETER LAI ,是 Diode 的区块链工程师。在进入软件开发领域之前,他主要是在做工商管理相关工作。Peter Lai 也是一位活跃的开源贡献者。目前,他正在与 Diode 团队一起开发基于区块...

红薯
今天
8
0
CC攻击带来的危害我们该如何防御?

随着网络的发展带给我们很多的便利,但是同时也带给我们一些网站安全问题,网络攻击就是常见的网站安全问题。其中作为站长最常见的就是CC攻击,CC攻击是网络攻击方式的一种,是一种比较常见的...

云漫网络Ruan
今天
11
0
实验分析性专业硕士提纲撰写要点

为什么您需要研究论文的提纲? 首先当您进行研究时,您需要聚集许多信息和想法,研究论文提纲可以较好地组织你的想法, 了解您研究资料的流畅度和程度。确保你写作时不会错过任何重要资料以此...

论文辅导员
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部