一、ab网站压力测试
ab是apache自带的压力测试工具,ab是apachebench命令缩写。它不仅可以对apache服务器进行网站访问压力测试,也可以对或其它类型的服务器进行压力测试。比如nginx、tomcat、IIS等。
如:ab -n 1000 -c 50 http://www.newdev.gztest.com/(-n 全部请求数 -c 并发数)
Requests per second: 108.61 [#/sec] (mean) #每秒请 求数(平均)//大家最关心的指标之一,相当于 LR 中的每秒事务数,后面括 号中的 mean 表示这是一个平均值Time per request: 460.381 [ms] (mean) #每次并发请求时间(所有并发) //大家最关心的指标之二,相当于 LR 中的平均事务响应时间, 后面括号中的 mean 表示这是一个平均值
Time per request: 9.208 [ms] (mean, across all concurrent requests) #每一请求时间(并发平均) //每个请求实际运行时间的平均值
Transfer rate: 8771.39 [Kbytes/sec] received #传输速 率//平 均每秒网络上的流量,可以帮助排除是否存在网络流量过大导致响应时间延长的问题
推荐看:https://www.cnblogs.com/yueminghai/p/6412254.html
二、iperf测网络性能
Iperf 是一个网络性能测试工具。Iperf可以测试最大TCP和UDP带宽性能。Iperf具有多种参数和UDP特性,可以根据需要调整。Iperf可以报告带宽,延迟抖动和数据包丢失。进行测试时分为服务端和客户端。
1:在同台宿主机下,测试虚拟机到另一台虚拟机的最大网络性能
2:测试共有云内网最大网络性能
3:测试局域网wifi的最大传输性能
4:测试两点之间的带宽
服务端 (TCP模式测试)
iperf -s (-s 作为服务端)
客户端
iperf -c 192.168.122.1 -t 60 #在tcp模式下,客户端到服务器192.168.1.1上传带宽测试,测试时间为60秒。
iperf -c 192.168.122.1 -P 30 -t 60 #客户端同时向服务器端发起30个连接线程。
iperf -c 192.168.122.1 -d -t 60 -i 2 #进行上下行带宽测试。
服务端 (UDP模式测试)
iperf -u -s
# -u表示以udp模式运行,-s表示作为服务端
客户端
iperf -u -c 192.168.122.1 -b 100M -t 60 -i 2
#解释:在udp模式下,以100Mbps为数据发送速率,客户端到服务器192.168.1.1上传带宽测试,测试时间为60秒
iperf -u -c 192.168.122.1 5M -P 30 -t 6
#客户端同时向服务器端发起30个连接线程,以5Mbps为数据发送速率
iperf -u -c 192.168.122.1 -b 100M -d -t 60
#以100M为数据发送速率,进行上下行带宽测试
三、Jmeter性能测试(接口、压力)
Apache JMeter是一个开源的 压力测试 工具, JMeter 是基于 Java 开发的,不仅仅用于 Web 压力测试,还用开源用于基于访问式软件做压力测试,可对静态文件、数据库、FTP
、SSH
等做 压力测试 ,运行在windos系统上。
推荐看:https://www.cnblogs.com/balllyh/p/9474372.html
https://blog.csdn.net/u012111923/article/details/80705141
四、webbench 网站压力测试
webbench -c 300 -t 60 http://www.baidu.com/
-t表示测试的时间,-c表示并发访问网站的客户数
Webbench能测试处在相同硬件上,不同服务的性能,也能测试不同硬件上同一个服务的运行状况。
webbench的标准测试可以展示服务器的两项内容:每秒钟相应请求数和每秒钟传输数据量。
webbench具有静态页面的测试能力,能对动态页面(ASP,PHP,JAVA,CGI)进行测试;也支持对含有SSL的安全网站例如电子商务网站进行静态或动态的性能测试
五、http_load压力测试(负载、吞吐量)
http_load是基于linux平台的性能测试工具,它体积非常小,仅100KB。它以并行复用的方式运行,可以测试web服务器的吞吐量与负载
http_load使用方式:
http_load -parallel 100 -fetches 10000
#100个并发执行10000次
http_load -parallel 100 -seconds 3600
#100个并发执行1小时
http_load -rate 100 -fetches 10000
#每秒100个请求频率,请求10000次
http_load -rate 100 -seconds 3600
#每秒100个请求频率执行1小时
推荐看:https://www.cnblogs.com/cqingt/p/6043126.html
六、Loadrunner(LR)
Loadrunner 11是一款免费的性能测试工具,他包含三个大模块(运行在windos)
•使用VuGen:创建脚本
•运用Controller:设置方案
•查看Analysis:分析测试结果
LR性能测试常用术语:
并发用户数量:与服务器进行交互的在线用户数量(与服务器交互+在线)。
请求响应时间:从client端发出请求到得到响应的整个时间(发送请求时间+sever返回消息时间)。
事务响应时间:完成一个事务所用的时间(很重要)
吞吐率:每秒在网络上传输的数据量(是指server端返回client端的数据量),同样很重要
tps:(Transaction per second)每秒系统能够处理事务的数量(与并发用户数相关。举个例子,一个事务的响应时间是1s,现在有一个用户与服务器进行交互,那么此时的tps就是1;一个事务的响应时间是1s,此时1000个用户与服务器进行交互,未达到服务器极限的情况下,服务器基本稳定,此时的tps就是1000)。
点击率:每秒发送的HTTP请求数量,点击率越大,对server的压力越大(非鼠标点击button数,并不准确,一个button可能包含多个请求)
资源利用率:监控不同资源的使用程度,比如服务器的CPU、内存等
推荐:https://blog.csdn.net/gyrii/article/details/80237497
七、Jprofiler (测java应用,商用软件)
JProfiler是由ej-technologies GmbH公司开发的一款性能瓶颈分析工具(该公司还开发部署工具)。
推荐:https://www.cnblogs.com/jpfss/p/8488111.html
八、Spotight(测Oracle数据库)
Spotlight是一个强有力的Oracle数据库实时性能诊断工具,提供了一个直观的、可视化的数据库活动展现。Spotlight可视化展现性能瓶颈,一旦某个指标超出可接受的阀值的话。而且,通过下钻功能,DBA可以简单、快速地追查性能瓶颈的底层原因。
推荐:https://blog.csdn.net/u011391839/article/details/79983446
九、siege(Http压力测试工具)
Siege是一款高性能的Http压力测试工具。
Siege支持身份验证、cookies、http、https和ftp协议。
推荐:https://www.jianshu.com/p/74c465ff136f