前言
Apache自带压力测试工具ab,简单易用,且可以模拟对各种条件对web服务器发起测试请求
ab工具可以直接在Web服务器本地发起测试请求,这对于需要了解服务器的处理性能至关重要,因为它不包括数据的网络传输时间以及用户PC本地的计算时间,从而可以通过观测各种时间指标判断Web服务器的性能以便进行参数的优化调整
ab工具使用方式
命令格式
ab [选项] 网页地址
常用选项
-n 测试会话中所执行的请求总数,默认时仅执行一个请求
-c 并发产生的请求个数,默认时一次一个
-t 测试所进行的最秒数
-v 设置显示信息的详细程度
实验环境
VMware软件
centos7.6操作系统
手工编译安装Apache,并且在主页中添加一张image.jpg的图片
实验目的
使用Apache自带ab工具,测试压缩模块优化前后的时间差距
实验过程
1.手工编译安装apache,这里不再重复,可查看博主前面的博客。
2.使用which命令查看ab命令是否可用,不能直接用的话在/usr/local/httpd/bin目录下
[root@localhost opt]# which ab
/usr/bin/ab
3.添加本地主机映射
[root@localhost bin]# vim /etc/hosts
14.0.0.40 www.test.com
4.在主页中添加一张image.jpg的图片
[root@localhost ~]# cd /usr/local/httpd/htdocs/
[root@localhost htdocs]# ls
image.jpg index.html
[root@localhost htdocs]# vim index.html
<html><body><h1> It works! </h1></body></html>
<img src="image.jpg"/>
5.测试www.test.com/index.html,请求总数为3000,并发请求个数为1000
[root@localhost opt]# ab -n 3000 -c 1000 www.test.com/index.html
6.测试三次,记录时间结果
- 21.050
- 21.022
- 21.055
7.开启压缩模块
[root@localhost htdocs]# vim ../conf/httpd.conf
#LoadModule deflate_module modules/mod_deflate.so ##将前面的#去掉
LoadModule headers_module modules/mod_headers.so
LoadModule filter_module modules/mod_filter.so
<IfModule mod_deflate.c> ##在主配置文件最后加入
AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript text/jpg
DeflateCompressionLevel 9
SetOutputFilter DEFLATE
</IfModule>
[root@localhost htdocs]# cd ../bin/
[root@localhost bin]# ./apachectl stop
[root@localhost bin]# ./apachectl start
8.再次测试www.test.com/index.html,请求总数为3000,并发请求个数为1000
[root@localhost opt]# ab -n 3000 -c 1000 www.test.com/index.html
9.开启压缩优化后再测试三次,记录时间结果
- 21.023
- 21.011
- 20.055
10.网页中的图片内容比较少,实验效果不明显。