网站性能压力测试是服务器网站性能调优过程中必不可少的一环,只有让服务器储在高压的情况下,才能正在体现出软件、硬件等各种设置不当所暴露出的问题。性能测试工具目前最常见的有以下几种:ab、http_load、webbench、siege。
ab是Apache自带的压力测试工具,非常使用,可以模拟多线程并发请求,测试请求服务器负载压力。它不仅可以对Apache服务器进行网站访问压力测试,而且可以对其他类型的服务器进行压力测试,比如nginx、tomcat、IIS等。ab对发出负载的计算机要求很低,既不会占用很多CPU,也不会占用太大内存,但却会给目标服务器造成巨大的负载。 ab工具是装完Apache服务就自带的,位于 /usr/bin/ab 下 (1)、命令格式
ap 选择 网站网址(2)、参数说明
-n:测试会话中所执行的请求总数,默认时仅执行一个请求;-c:并发产生的请求个数,默认是一个一次;-t:测试所进行的最大秒数;-v:设置显示信息的详细过程 (3)、ab压力测试相关参数 参数描述Server Softwarehttp响应数据的头信息Server Hostname请求的url中的主机名称Server Portweb服务器软件的监听单口Document Path请求的url根的绝对路径Document Lengthhttp响应数据的正文长度Concurrency Level并发的用户数Time taken for tests所有这些请求被处理完成所花费的时间总Complete requests表示总请求数Failed requests失败的请求总数 参数描述Total transferred请求的响应数据长度总和Requests per second服务器的吞吐率,每秒处理的请求数Time per requset用户平均请求等待时间Time per request每个请求实际运行时间的平均值Percentage of the requsets served within a certain time(ms)描述每个请求处理时间的分布情况1、添加DNS解析地址
[root@02 bin]# echo "nameserver 192.168.100.198" > /etc/resolv.conf2、开启模块
[root@02 bin]# vim /etc/httpd.conf LoadModule headers_module modules/mod_headers.so LoadModule filter_module modules/mod_filter.so LoadModule deflate_module modules/mod_deflate.so在末行添加如下代码
<IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript text/jpg text/png DeflateCompressionLevel 9 SetOutputFilter DEFLATE </IfModule>可以使用 ./apachectl -t验证语法格式 3、使用ab进行压测
[root@02 bin]# ab -n 3000 -c 1000 www.kgc.com/index.html4、现在关闭压缩模块,再对比一下刚才的结果 重新启动服务
