[status]状态页
对于运维人员来说,需要实时监控httpd实时运行情况,负载情况,连接数等,能够更好的掌握服务器的情况,
需要在编译安装apache的时候,开启mod_status模块
/etc/httpd/conf/httpd.conf配置文件中添加状态参数
<Location /server-status>
SetHandler server-status
<RequireAll>
Require ip 10.0.0.0/24
</RequireAll>
</Location>
重启httpd
访问状态页路径
http://10.0.0.200/server-status
【针对apache进行压力测试】
使用apache自带的压力测试工具
1.可能需要单独安装软件包
[root@chaogelinux ~]# yum install httpd-tools
【ab命令常用参数】
此外,我们再根据上面的用法介绍界面来详细了解每个参数选项的作用。
-n 即requests,用于指定压力测试总共的执行次数。
-c 即concurrency,用于指定的并发数。
-t 即timelimit,等待响应的最大时间(单位:秒)。
-b 即windowsize,TCP发送/接收的缓冲大小(单位:字节)。
-p 即postfile,发送POST请求时需要上传的文件,此外还必须设置-T参数。
-u 即putfile,发送PUT请求时需要上传的文件,此外还必须设置-T参数。
-T 即content-type,用于设置Content-Type请求头信息,例如:application/x-www-form-urlencoded,默认值为text/plain。
-v 即verbosity,指定打印帮助信息的冗余级别。
-w 以HTML表格形式打印结果。
-i 使用HEAD请求代替GET请求。
-x 插入字符串作为table标签的属性。
-y 插入字符串作为tr标签的属性。
-z 插入字符串作为td标签的属性。
-C 添加cookie信息,例如:"Apache=1234"(可以重复该参数选项以添加多个)。
-H 添加任意的请求头,例如:"Accept-Encoding: gzip",请求头将会添加在现有的多个请求头之后(可以重复该参数选项以添加多个)。
-A 添加一个基本的网络认证信息,用户名和密码之间用英文冒号隔开。
-P 添加一个基本的代理认证信息,用户名和密码之间用英文冒号隔开。
-X 指定使用的和端口号,例如:"126.10.10.3:88"。
-V 打印版本号并退出。
-k 使用HTTP的KeepAlive特性。
-d 不显示百分比。
-S 不显示预估和警告信息。
-g 输出结果信息到gnuplot格式的文件中。
-e 输出结果信息到CSV格式的文件中。
-r 指定接收到错误信息时不退出程序。
-h 显示用法信息,其实就是ab -help。
【开始测试】
1.发出100个并发数,总共发出10000个请求
[root@chaogelinux ~]# ab -c 100 -n 100000 http://10.0.0.200/
2.检查状态页的信息
http://10.0.0.200/server-status
【状态页参数解析】
1.检查服务器的进程数量,apache每一请求会启动一个进程
开启100个并发,发出一万个请求
[root@chaogelinux ~]# ab -c 100 -n 10000 http://192.168.178.191/
2.检查进程数
[root@chaogelinux ~]# ps -ef|grep httpd |wc -l
107