网站性能测试指标及网站压力测试
1. 一般衡量网站性能有哪些指标?
2. 怎么测试网站性能?
3. 怎么进行压力测试?
1. 一般衡量网站性能有哪些指标?
性能指标主要有响应时间,吞吐量,并发量,性能计数器。
1)响应时间
指应用执行一个操作需要的时间,即从发出请求到最后收到响应数据所需要的时间。
系统常用操作响应时间表
操作
|
响应时间
|
打开一个网站
|
几秒
|
数据库查询一条记录(有索引)
|
十几毫秒
|
机械磁盘一次寻址定位
|
4毫秒
|
从机械磁盘顺序读取1M数据
|
2毫秒
|
从SSD磁盘顺序读取1M数据
|
0.3毫秒
|
从远程分布式换成Redis读取一个数据
|
0.5毫秒
|
从内存读取1M数据
|
十几微秒
|
Java程序本地方法调用
|
几微秒
|
网络传输2Kb数据
|
1微秒
|
实践中通常采用的办法是重复请求,比如一个请求操作重复执行1万次,测试一万次执行的总响应时间之和,然后除以1万,就得到单次请求的响应时间。
2)吞吐量
指单位时间内系统处理的请求数量,体现系统的整体处理能力。对于网站,可用“请求数/秒”、“页面数/秒”或“访问人数/天”、“处理业务数/小时”等来衡量。重要指标有TPS(每秒处理的事物数)、QPS(每秒查询的请求数)、HPS(每秒HTTP请求数)等。
3)并发量
指系统能够同时处理的请求的数目,这个数字反映了系统的负载性能。对于网站而言,并发数指网站用户同时提交请求的用户数目。
4)性能计数器
描述服务器或操作系统性能的一些数据指标。如System Load、对象与线程数、内存使用、CPU使用、磁盘与网络I/O等使用情况。通过对这些指标设置报警阈值,当监控系统发现性能计数器超过阈值时,就向开发人员和运维报警,及时发现异常并处理。
2. 怎么测试网站性能?
性能测试具体可以细分为性能测试、负载测试、压力测试、稳定性测试。
1)性能测试
以系统设计初期规划的性能指标为预期目标,对系统不断施加压力,验证系统在资源可接受范围内是否能达到预期。
2)负载测试
对系统不断增加并发请求以增加系统压力,直到系统的某项或多项性能指标达到安全临界值,这时继续对系统施加压力,系统的处理能力不但不会提高,反而会下降。
3)压力测试
超过安全负载的情况下,对系统施加压力,直到系统崩溃或不能再处理任何请求,以此获得系统最大压力承受能力。
4)稳定性测试
被测试系统在特定硬件、软件、网络环境条件下,给系统加载一定业务压力,使系统运行一段较长时间,以此检验系统是否稳定。
3. 怎么进行压力测试?
压力测试工具有http_load、apache ab、siege。
1)http_load
下载:http://acme.com/software/http_load/(点击Fetch the software即可)
安装:
tar zxvf http_load-09Mar2016.tar.gz
cd http_load-09Mar2016
make
sudo make install
注:遇到了Error1,但不影响使用。
(2017.9.12整理笔记时,又尝试了一下,发现可以用Homebrew安装http_load,当时怎么没想到用Homebrew安装啊。。。
版权声明:本文为sunshineliulu原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。