通过cmd 进入到 apache 的bin目录,在命令行中输入:
```
ab -n 1000 -c 150 http://www.o.com/home/index/redis
```
如需下载压力测试结果
```
ab -n 1000 -c 150 http://www.o.com/home/index/redis >>d:miss.html
```
下图为压力测试结果翻译
![](https://box.kancloud.cn/0aa9e9993ee78367db7e110156864ff5_612x646.jpg)
其中 1000代表访问1000次, 150表示 150人同时访问
注意:apache 默认最多150人访问,我们可以设置conf\\extra下的httpd-mpm.conf文件来修改它的最大并发数.Mpm为多路处理模块,即apache采用怎么样的方式来处理并发,主要有三种方式
1、 perfork 预处理进程方式(用进程服务)
2、 worker 工作模式(用进程下的线程服务)
3、 winnt这个一般是windos 下采用的。(针对windows)
说完这个我们就可以动手修改配置文件了。步骤如下:
1、 打开httpd.conf配置文件,打开下面的配置
\# Server-poolmanagement (MPM specific)
Include conf/extra/httpd-mpm.conf
2、 确定当前 apache是mpm模式,CMD下进放到apache的bin目录输入指令httpd.exe –l
会出现以下结果,就可知道它用的是什么模式
~~~
Compiledin modules:
core.c
mod_win32.c
mpm_winnt.c 这是为winnt模式
http_core.c
mod_so.c
~~~
修改httpd-mpm.conf文件,因为从上面可以看到,我的apache用的是winnt模式,所以在该文件下找到对应的winnt\_module模块,修改参数,原先为150,我们把它修改成1000
~~~
1 <IfModulempm_winnt_module>
2 ThreadsPerChild 1000
3 MaxConnectionsPerChild 0
4 </IfModule>
~~~
4、 重启服务器
修改完之后我们重新运行上面的命令ab.exe-n 10000 -c 500 http://localhost/test/index.php
它就会运行成功了,出现与ab.exe -n10000 -c 100 http://localhost/test/index.php时类似的效果。
同理,如果是其它模式,则在httpd-mpm.conf中修改对应的地方即可。如下
~~~
<IfModule mpm_prefork_module>
StartServers 5 #开始启动的进程
MinSpareServers 5 #最小准备进程
MaxSpareServers 10 #最大空闲进程
MaxRequestWorkers 1000 #最大并发数
MaxConnectionsPerChild 0
</IfModule>
~~~
- ThinkPHP
- MySql
- 事务
- 漏洞修复
- jQuery
- select搜索下拉框,多选,全选等
- 移动端富文本编辑器
- 复制内容
- ajax请求
- PHP
- 基本语法
- 关于屏蔽“未定义数组下标:0”错误的问题
- PHP文件操作
- 使用PhpOffice 在PHP7.3中导出数据报错问题
- curl
- PHP生成PPT
- Redis
- 如何在PHP中安装Redis扩展
- Redis队列,秒杀,抢购
- 压力测试(ab)
- apache ab压力测试
- 微信
- 微信支付
- 微信分享
- 授权登录
- 微信公众号服务器
- 自动回复
- 微信发起支付html页面
- composer
- 安装
- 二维码的生成
- Excel导入导出
- 数据采集
- 采集列表
- 采集内容详情
- 图片采集
- Linux
- 常用命令
- 解压压缩
- 服务器
- 服务器运行缓慢的原因
- IIS 隐藏index.php
- 端口检测
- Nginx
- 数据库
- Oracle数据库
- MySql
- 新增MySql
- Field字段
- Tp验证码加载不出来,解决办法
- API接口
- Google API
- 织梦CMS支付接口
- SMTP发送邮箱问题
- Could not connect to SMTP host
- 阿里云API接口
- 支付宝新版配置
- 腾讯API接口
- 安装方法
- 百度地图API
- 通过ip地址获取当前城市
- 常用笔记
- yarn