打开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

<IfModulempm_winnt_module>
ThreadsPerChild 1000
MaxConnectionsPerChild 0
</IfModule>

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

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

3、重启Apache服务器

参考资料:

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

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

PHP使用Apache中的ab测试网站的压力性能及mpm介绍的更多相关文章

  1. PHP使用Apache中的ab测试网站的压力性能

    打开Apache服务器的安装路径(我用的是 WampServer),在bin目录中有一个ab.exe的可执行程序,它就是要介绍的压力测试工具. 在Windows系统的命令行下,进入ab.exe程序所在 ...

  2. 使用webbench工具测试网站访问压力

    介绍 Webbench是一个在Linux下使用的网站压测工具.它使用fork()模拟多个客户端 同时访问我们设定的URL,测试网站在压力下工作的性能, 最多可以模拟3万个并发连接去测试网站的负载能力. ...

  3. PHP使用Apache中的ab(ApacheBench)测试网站的并发量

    AB(ApacheBench) 是 Apache 自带的超文本传输协议 (HTTP) 性能测试工具. 其设计意图是描绘当前所安装的 Apache 的执行性能, 主要是显示 Apache 每秒可以处理多 ...

  4. 如何在 Apache 中为你的网站设置404页面

    一个好的网站,拥有一个好的 404页面 是标配. 为何要有 404页面?如何设置一个 404页面? why 404 pages? 在本地,比如我打开 localhost/fuck.htm(该文件不存在 ...

  5. 使用Apache Server 的ab进行web请求压力测试

    参考:http://www.cnblogs.com/spring3mvc/archive/2010/11/23/2414741.html 自己写代码经常是顺着逻辑写下去,写完后run一下,ok就玩完事 ...

  6. PHP 使用Apache 中的ab 測试站点的压力性能

    打开Apacheserver的安装路径(我用的是 WampServer),在bin文件夹中有一个ab.exe的可运行程序,它就是要介绍的压力測试工具. watermark/2/text/aHR0cDo ...

  7. istio:在vs中实现ab测试和路径切割

    此篇内容 主要目的是总结vs中的match的有关规则和在istio中如何实现路径切割(当下版本1.8.2) 实验demo main.go package main import ( "git ...

  8. 使用ab对网站进行压力测试

    1.安装yum install httpd-tools 2.ab -kc 1000 -n 1000 http://localhost/ab.html 这个指令会使用1000个并发,进行连接1000次

  9. apache ab工具对网站进行压力测试

    Apache -- ab工具主要测试网站的(并发性能) 这个工具非常的强大. 基本语法 :   cmd>ab.exe –n 请求总次数  -c 并发数 请求页面的url     进入到ab.ex ...

随机推荐

  1. java中package指什么

    为了更好地组织类,Java 提供了包机制,用于区别类名的命名空间,类似C#的 namespace的作用,防止名字相同的类产生冲突. Java中的一个package(包)就是一个类库单元,包内包含有一组 ...

  2. Android设备管理器——DevicePolicyManager

    自从安卓2.2(API=8)以后,安卓手机是通过设备管理API对手机进行系统级的设备管理. 本篇通过大家熟悉的"一键锁屏"的小项目实现来介绍设备管理API如何通过强制设备管理策略创 ...

  3. 10分钟了解Android的Handler机制

    Handler机制是Android中相当经典的异步消息机制,在Android发展的历史长河中扮演着很重要的角色,无论是我们直接面对的应用层还是FrameWork层,使用的场景还是相当的多.分析源码一探 ...

  4. 用C#开发基于自动化接口的OPC客户端

    OPC全称是Object Linking and Embedding(OLE) for Process Control,它的出现为基于Windows的应用程序和现场过程控制应用建立了桥梁.OPC作为一 ...

  5. SQL*Plus工具

    或者

  6. vue.js----之router详解(一)

    在vue1.0版本的超链接标签还是原来的a标签,链接地址由v-link属性控制 而vue2.0版本里超链接标签由a标签被替换成了router-link标签,但最终在页面还是会被渲染成a标签的 至于为什 ...

  7. Es6对象的扩展和Class类的基础知识笔记

    /*---------------------对象的扩展---------------------*/ //属性简写 ,属性名为变量名, 属性值为变量的值 export default functio ...

  8. MySQL数据库之安装

    一.基础部分 1.数据库是什么 之前所学,数据要永久保存,比如用户注册的用户信息,都是保存于文件中,而文件只能存在于某一台机器上. 如果我们不考虑从文件中读取数据的效率问题,并且假设我们的程序所有的组 ...

  9. ActiveMQ消息的持久化策略

    持久化消息和非持久化消息的存储原理: 正常情况下,非持久化消息是存储在内存中的,持久化消息是存储在文件中的.能够存储的最大消息数据在${ActiveMQ_HOME}/conf/activemq.xml ...

  10. react 中子组件调用父组件的方法

    1.在父组件中定义方法,并绑定在子组件上 // 在子组件中调用父组件中的方法 import React,{Component} from 'react'; import Child from './c ...