加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Apache自带的ab(apache bench)工具[测试代码效率、压力测试,可以来测试网站并发量和某个页面访

(2013-07-10 22:18:04)
标签:

ab

apache

bench

压力测试

测试代码效率

1、  Apache自带的abapachebench)工具,测试代码效率、压力测试,可以来测试网站并发量和某个页面访问的时间。

1)       用法:ab –n 访问的总次数 –c 并发量(同一时刻多少人访问)访问url

ab –n 10000 –c 100 http://localhost/stati c/dynamic.php

模拟一百个人同时请求dynamic.php页面10000

http://s10/mw690/9bbafb79g7cea7fb44719&690bench)工具[测试代码效率、压力测试,可以来测试网站并发量和某个页面访" TITLE="Apache自带的ab(apache bench)工具[测试代码效率、压力测试,可以来测试网站并发量和某个页面访" />

当把-c调整到1000时,apache瘫痪。

如何调整Apache的最大并发量:

MPM(多路处理模块):apache采用怎样的方式来处理并发。主要有三种方式:

a.       prefork 预处理进程:预先启动指定进程为客户端服务,如不够用,再启动。消耗大 Linux常用

b.       worker 工作模式:在prefork的基础上改进,进程创建线程为客户端服务。

c.       winnt 这个一般说是windows下采用的

设置apache的最大并发数

httpd.conf中修改

(1)     #去掉前面的#号注释

# Server-pool management (MPM specific)

Include "conf/extra/httpd-mpm.conf"

(2)     确定当前apacheMPM的什么模式

进入apache/bin

Httpd  -l

http://s16/bmiddle/9bbafb79ge128fdd55dbf&690bench)工具[测试代码效率、压力测试,可以来测试网站并发量和某个页面访" />

mpm_xxx.c,如果xxxwinnt,说明是winnt,另外还可能是preforkworker

(3)     去修改httpd-mpm.conf文件

默认是winnt

 

    ThreadsPerChild  1000 #默认是150,调成1000,就能满足1000个并发

    MaxRequestsPerChild  0

    #Win32DisableAcceptEx

 

修改prefork

 

    StartServers          #预先启动几个进程

    MinSpareServers       5 #最小空闲进程

    MaxSpareServers      10 #最大空闲进程

    MaxClients          150 #最大客户端并发量,一般的极限2000-3000

    MaxRequestsPerChild   0 # 请求完成后,是否保存当前进程,对worker模式更有意义

 

(4)     重启apache测试

给大家一个合理的建议配置(对大部分中型网站):


              StartServers             #
预先启动
              MinSpareServers      5
              MaxSpareServers      10  #
最大空闲进程
              ServerLimit          1500   #
用于修改apache编程参数
              MaxClients           1000   #
最大并发数
              MaxRequestsPerChild  0

 

如果是大型网站(pv值百万):

ServerLimit          2500   #用于修改apache编程参数
MaxClients          2000   #
最大并发数

如果是超大型网站(pv值上千万):

 

使用nginx反向代理和负载均衡

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有