1

我在尝试在 OS X 上使用ab (apache bench)执行高并发测试时遇到了令人沮丧的问题。输出的片段如下所示:

Completed 1998 requests
Completed 2664 requests
Completed 3330 requests
apr_pollset_poll: The timeout specified has expired (70007)

我正在运行的命令是这样的:(我希望并发性更高!我的目标是至少 20,000 rpm 来访问服务器)

ab -k -r -c 400 -n 60000 [URL HERE]

有没有人遇到过这个——喜欢朝着正确的方向前进?我很想在我的 Mac 上执行此操作。

我的环境:

  • OS X:10.6.8
  • httpd : Apache/2.2.20 (Unix)
    • 架构:64位
    • 服务器 MPM:Prefork
    • 螺纹:没有
    • 分叉:是(可变进程计数)
  • ab :2.3 版(基于最新的 apache http beta 构建)
  • ulimit -a 产生:
    • 核心文件大小(块,-c)0
    • 数据段大小 (kbytes, -d) 无限制
    • 文件大小(块,-f)无限制
    • 最大锁定内存 (kbytes, -l) 无限制
    • 最大内存大小 (kbytes, -m) 无限制
    • 打开文件 (-n) 1024
    • 管道大小(512 字节,-p)1
    • 堆栈大小(千字节,-s)8192
    • cpu时间(秒,-t)无限制
    • 最大用户进程 (-u) 266
    • 虚拟内存 (kbytes, -v) 无限制
4

2 回答 2

2

我找到了一个很棒的实用程序,可以优雅地解决我的问题:

机枪蜜蜂!!

存储库:https ://github.com/newsapps/beeswithmachineguns

关于它的博客条目:http: //blog.apps.chicagotribune.com/2010/07/08/bees-with-machine-guns/

于 2012-01-24T23:09:05.597 回答
0

对于亚马逊以外的东西进行测试,我使用了 jMeter,效果很好。但我想知道ab问题到底是什么。

于 2013-01-13T15:09:44.700 回答