博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP使用Apache中的ab测试网站的压力性能及mpm介绍
阅读量:5330 次
发布时间:2019-06-14

本文共 2175 字,大约阅读时间需要 7 分钟。

打开Apache安装的bin目录

shift+鼠标右键

复制粘贴以下代码->回车

ab -n 1000 -c 100 http://localhost/test.php

上例表示总共访问http://localhost/test.php这个脚本1000次,100并发(模拟100个用户同时访问)。

Server Software:        Apache/2.4.4                                   #apache版本号  Server Hostname:        localhost  Server Port:            80     Document Path:          /test/index.php                       Document Length:        5 bytes     ConcurrencyLevel:      100  Time taken fortests:   54.111 seconds                                 #访问的总时间(秒)  Completerequests:      10000                                          #访问的总次数  Failed requests:        0  Write errors:           0  Totaltransferred:      2060000 bytes  HTMLtransferred:       50000 bytes  Requests persecond:    184.80 [#/sec] (mean)                          #每秒访问多少次  Time perrequest:       541.111 [ms] (mean)                            #这么多人(100)访问一次的时间  Time perrequest:       5.411 [ms] (mean, acrossall concurrent requests)         #一个人访问一次花费的时间  Transfer rate:          37.18 [Kbytes/sec] received
ab常用参数的介绍:
  -n :总共的请求执行数,缺省是1;  -c: 并发数,缺省是1;  -t:测试所进行的总时间,秒为单位,缺省50000s  -p:POST时的数据文件  -w: 以HTML表的格式输出结果

mpm介绍

mpm是apache自带的,可以用它来测试网站的并发量有多大和某个页面的访问时间。Mpm为多路处理模块,即apache采用怎么样的方式来处理并发,主要有三种方式

1、  perfork 预处理进程方式(用进程服务)2、  worker 工作模式(用进程下的线程服务)3、  winnt这个一般是windos 下采用的。(针对windows)

修改Apache默认并发配置

1、  确定当前 apache是mpm模式,CMD下进放到apache的bin目录输入指令httpd –l 会出现以下结果,就可知道它用的是什么模式

Compiledin modules:    core.c    mod_win32.c    mpm_winnt.c 这是为winnt模式    http_core.c    mod_so.c

2、修改httpd-mpm.conf文件,因为从上面可以看到,我的apache用的是winnt模式,所以在该文件下找到对应的winnt_module模块,修改参数,原先为150,我们把它修改成1000

ThreadsPerChild 1000 MaxConnectionsPerChild 0

同理,如果是其它模式,则在httpd-mpm.conf中修改对应的地方即可。如下

StartServers 5 #开始启动的进程 MinSpareServers 5 #最小准备进程 MaxSpareServers 10 #最大空闲进程 MaxRequestWorkers 1000 #最大并发数 MaxConnectionsPerChild 0

3、重启Apache服务器

参考资料:

http://blog.csdn.net/zhangzmb/article/details/51884011

http://blog.csdn.net/aoyoo111/article/details/30734527

 

转载于:https://www.cnblogs.com/wangzhaobo/p/8296298.html

你可能感兴趣的文章
Javascript异步编程的4种方法(转载)
查看>>
数据结构---公交线路提示系统02
查看>>
前端性能优化&&网站性能优化
查看>>
【代码模板】不存在的NOIP2016
查看>>
Automatically populating $HTTP_RAW_POST_DATA is deprecated......
查看>>
StringBuffer类&包装类
查看>>
spring源码研究1 如何导入源码
查看>>
【短语学习】什么是TPS
查看>>
技巧方法
查看>>
创建WebApi Odata v3 终结点
查看>>
图片加载判断
查看>>
java中23种优秀的设计模式
查看>>
stage3d 你不知道的巨坑
查看>>
netty
查看>>
Java反射+注解案例
查看>>
MYSQL注入提升权限(sa用户)system admin
查看>>
Ubuntu下GTK的安装安装过程
查看>>
软件工程个人作业03
查看>>
Codeforces711C 【DP】
查看>>
在Windows上安装私有GitHub的开源替代-GitLab
查看>>