压力测试中需要掌握的几个基本概念
1:吞吐率(Requests per second)
服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处理的请求数。某个并发用户数下单位时间内能处理的最大请求数,称之为最大吞吐率。
记住:吞吐率是基于并发用户数的。这句话代表了两个含义,1:吞吐率和并发用户数相关;2:不同的并发用户数下,吞吐率一般是不同的。
计算公式:总请求数 / 处理完成这些请求数所花费的时间,即
Request per second = Complete requests / Time taken for tests
2:并发连接数(The number of concurrent connections)
并发连接数指的是某个时刻服务器所接受的请求数目,简单的讲,就是一个会话。
3:并发用户数(The number of concurrent users,Concurrency Level)
要注意区分这个概念和并发连接数之间的区别,一个用户可能同时会产生多个会话,也即连接数。在HTTP/1.1下,IE7支持两个并发连接,IE8支持6个并发连接,FireFox3支持4个并发连接,所以相应的,我们的并发用户数就得除以这个基数。
4:用户平均请求等待时间(Time per request)
计算公式:处理完成所有请求数所花费的时间/ (总请求数 / 并发用户数),即
Time per request = Time taken for tests /( Complete requests / Concurrency Level)
5:服务器平均请求等待时间(Time per request: across all concurrent requests)
计算公式:处理完成所有请求数所花费的时间 / 总请求数,即
Time taken for / testsComplete requests
可以看到,它是吞吐率的倒数。
同时,它也=用户平均请求等待时间/并发用户数,即
Time per request / Concurrency Level
二:具体做法
1:压力测试工具选择
重量级的工具有Visual Studio 自带的工具,还有Loader Runner(LR),轻量级的工具有Apache项目中的ApacheBench,简称ab。你可以在这里下载:ab.zip。
2:ab的简单使用及参数介绍
以上测试,基于我的一个asp.net的页面。对于压力测试,必须时时刻刻做,如果不知道自己的应用能够承载多少的并发用户数,那基本上就是在扔定时炸弹。
相关推荐
-
Linux下Web网站压力测试工具Webbench使用教程
Webbench是一个非常简单的压力测试工具,Webbench最多可以模拟3万个并发连接去测试网站的负载能力. (1)Webbench安装 复制代码 代码如下: wget http://www.jb51.net/soft/linux/webbench-1.5.tar.gz tar zxvf webbench-1.5.tar.gz cd webbench-1.5 make make install (2)Webbench使用 复制代码 代码如下: webbench -c 1000 -t 60 ht
-
Web性能压力测试工具Siege使用教程
Siege是一个多线程http负载测试和基准测试工具.通过使用Siege 提供的功能,可以很容易的制定测试计划:包括规定使用并发用户数.重复数量,从而可以模拟在服务器.网络或者其它对象上附加负载以测试他们提供服务的受压能力,方便的测试服务器的性能. 官方下载地址:http://www.joedog.org/pub/siege/ Siege安装: #wget http://www.joedog.org/pub/siege/siege-latest.tar.gz #tar -xzvf siege-l
-
android压力测试命令monkey详解
一.Monkey 是什么?Monkey 就是SDK中附带的一个工具. 二.Monkey 测试的目的?:该工具用于进行压力测试. 然后开发人员结合monkey 打印的日志 和系统打印的日志,结局测试中出现的问题. 三.Monkey 测试的特点?Monkey 测试,所有的事件都是随机产生的,不带任何人的主观性. 四.Monkey 命令详解 1).标准的monkey 命令[adb shell] monkey [options] <eventcount> , 例如:adb shell monkey -
-
Mysqlslap MySQL压力测试工具 简单教程
MySQL从5.1.4版开始带有一个压力测试工具mysqlslap,通过模拟多个并发客户端访问mysql来执行测试,使用起来非常的简单.通过mysqlslap –help可以获得可用的选项,这里列一些主要的参数,更详细的说明参考官方手册. 复制代码 代码如下: –auto-generate-sql, -a 自动生成测试表和数据 –auto-generate-sql-load-type=type 测试语句的类型.取值包括:read,key,write,update和mixed(默认). –numb
-
并发数据库压力测试的shell脚本代码
复制代码 代码如下: #!/bin/bash#********************************##并发后台运行fun ##for wanggy 2012-01-25 ##note: ##fun_num fun函数后台运行次数 ##sql_num 每个函数sql运行次数 ##********************************##数据库变量设置dbho
-
Linux下Web性能压力测试工具http_load使用教程
http_load介绍: http_load基于linux平台的一种性能测工具.以并行复用的方式运行,用以测试web服务器的吞吐量与负载,测试web页面的性能. 下载及安装: wget http://www.acme.com/software/http_load/http_load-12mar2006.tar.gz tar xzvf http_load-12mar2006.tar.gz cd http_load-12mar2006/ make && make install http_lo
-
压力测试中需要掌握的几个基本概念
1:吞吐率(Requests per second) 服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处理的请求数.某个并发用户数下单位时间内能处理的最大请求数,称之为最大吞吐率. 记住:吞吐率是基于并发用户数的.这句话代表了两个含义,1:吞吐率和并发用户数相关:2:不同的并发用户数下,吞吐率一般是不同的. 计算公式:总请求数 / 处理完成这些请求数所花费的时间,即 Request per second = Complete requests / Time ta
-
配置ab来为Nginx服务器做压力测试的方法
在运维工作中,压力测试是一项非常重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验. 但是,在压力测试中存在一个共性,那就是压力测试的结果与实际负载结果不会完全相同,就算压力测试工作做的再好,也不能保证100%和线上性能指标相同.面对这些问题,我们只能尽量去想方设法去模拟.所以,压力测试非常有必要,有了这些数据,我们就能对自己做维护的平台做到心中有数. 目前较为常见的网站压力测试工具有webbench.ab(apache benc
-
服务器压力测试概念及方法(TPS/并发量)
目录 1 压力测试中的指标 1.1 TPS 1.2 QPS 1.3 平均处理时间(RT) 1.4 并发用户数(并发量) 1.5 换算关系 1.6 TPS和QPS的区别 2 压力测试方法 3 相关文档 1 压力测试中的指标 1.1 TPS TPS 即Transactions Per Second的缩写,每秒处理的事务数目.一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程**(完整处理,即客户端发起请求到得到响应)**.客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使
-
mysql压力测试脚本实例
本文实例讲述了mysql压力测试的脚本,分享给大家供大家参考.具体如下: 创建表DEPT 复制代码 代码如下: CREATE TABLE dept( /*部门表*/ deptno MEDIUMINT UNSIGNED NOT NULL DEFAULT 0, dname VARCHAR(20) NOT NULL DEFAULT "", loc VARCHAR(13) NOT NULL DEFAULT "" ) ENGINE=MyISAM DEFAULT C
-
web压力测试工具_动力节点Java 学院整理
0. Grinder – Grinder是一个开源的JVM负载测试框架,它通过很多负载注射器来为分布式测试提供了便利. 支持用于执行测试脚本的Jython脚本引擎HTTP测试可通过HTTP代理进行管理.根据项目网站的说法,Grinder的 主要目标用户是"理解他们所测代码的人--Grinder不仅仅是带有一组相关响应时间的'黑盒'测试.由于测试过程可以进行编码--而不是简单地脚本 化,所以程序员能测试应用中内部的各个层次,而不仅仅是通过用户界面测试响应时间. 1. Pylot -Pylot 是
-
sysbench对mysql压力测试的详细教程
前言 在对网站整体性能进行benchmark时,可以使用多种工具,比如大名鼎鼎的ab(Apache bench),http_load等工具.这里我们不关注他们的使用,如果你想了解,可以自行在网上找到答案. 重点来说MySQL的基准测试如何进行,也有很多种工具来供我们选择,比如mysqlslap.sysbench.Super Smack等,其中mysqlslap的使用MySQL官网给出了介绍,Super Smack是服务器压力测试强有力的工具,那么sysbench便是我们进行MySQL基准测试的很
-
jmeter压力测试工具简介_动力节点Java学院整理
什么是压力测试 顾名思义:压力测试,就是 被测试的系统,在一定的访问压力下,看程序运行是否稳定/服务器运行是否稳定(资源占用情况) 比如: 2000个用户同时到一个购物网站购物,这些用户打开页面的速度是否会变慢,或者网站是否会奔溃 做压力测试的常用工具 做压力测试,一般要使用工具, 人工是没办法做的. 最常用的工具是LoadRunner, 但是LoadRunner毕竟是收费软件,而且使用上也比较复杂. 现在越来越多的人开始使用Jmeter来做压力测试. 免费, 而且使用上非常简单. 做压力测试的
-
Web压力测试工具:http_load、webbench、ab、Siege使用方法
前言:常在网络飘,哪有不挨刀?做网站的站长说不准哪天得罪了XX人,二话不说直接操着DDOS就上来搞你了,黑不了你,哥就D死你,遇到这样的无赖,还真没办法,因此经常性的给自己的网站做做压力测试,看看服务器的承载能力是很有必要的一件事. 一.http_load 程序非常小,解压后也不到100K http_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载.但是它不同于大多数压力测试工 具,它可以以一个单一的进程运行,一般不会把客户机搞死.还可以测试HTTPS类的网站请求. 下载地址:h
-
Apache的压力测试以及web性能优化的常用知识总结
什么是带宽? 误解:"数据在线路中的移动速度"."数据的传输速度" 我们所说的带宽是指数据的发送速度,比如百兆网卡,指网卡的最大发送速度是100Mbps,也就是说网卡在一秒钟最多可以发送100Mb的数据:相关的因素: 数据发送装置将二进制信号传送到线路的能力,也称信号传输频率,以及另一端数据接收装置对二进制信号接收的能力,也包括线路对传输频率的支持程度: 数据传输介质的并行度,等价于计算机系统总线宽度的概念: 习惯与约定 b:比特单位 bit: B:字节单位 Byt
随机推荐
- iOS App开发中使用设计模式中的单例模式的实例解析
- Jquery操作js数组及对象示例代码
- MyBatis学习教程(八)-Mybatis3.x与Spring4.x整合图文详解
- Asp.Net FckEditor在web.config中配置的具体实例
- asp下几种常用排序算法
- Spring mvc 分步式session的实例详解
- JSP 不能解析EL表达式的解决办法
- mysql压缩包版安装配置方法图文教程
- JavaScript实现页面5秒后自动跳转的方法
- 学习jquery之一
- 解析ADT-20问题 android support library
- jQuery查找和过滤_动力节点节点Java学院整理
- jquery select动态加载选择(兼容各种浏览器)
- 关于JS变量和作用域详解
- C语言数据结构 栈的基础操作
- PHP判断变量是否为0的方法
- Android中EditText+Button组合导致输入板无法收起的原因分析及解决办法
- 三明科技免费310M全能空间
- Java编程经典小游戏设计-打砖块小游戏源码
- 详解vue组件开发脚手架