Mac使用ab并发测试问题

Mac进行ab测试,遇到的问题集锦:apache

一、apr_socket_recv: Connection reset by peer (54)并发

在Mac上进行ab测试时,ab -c 200 -t 100 http://127.0.0.1:8001发现会没法正确的返回。
错误信息以下:socket

Mac:~ air$ ab -n 10000 -c 2000 http://127.0.0.1:80/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
 
Benchmarking 127.0.0.1 (be patient)
apr_socket_recv: Connection reset by peer (54)

这个报错通常是因为使用的MacOSX默认自带的ab限制了并发数致使的。测试

解决办法:下载最新的apache并从新编译,备份原来的ab并将新编译的ab替换到原来的路径。.net

先下载文件:httpd-2.4.25.tar.bz2,在编译的时候说没有apr和apr-util,先对这两个进行安装;code

tar -zxvf apr-1.5.2.tar.gz
./configure --prefix=/usr/local/apr
make & make install

tar -zxvf apr-util-1.5.4.tar.gz
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make & make install

tar -zxvf httpd-2.4.25.tar.bz2
./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
make & make install

文件下载地址:http://apr.apache.org/downloa...http://apache.fayea.com/httpd/get

最后须要使用新安装的httpd下的ab;it

二、socket: Too many open files (24)io

通常这种报错是因为MacOSX默认的open files数值太小致使的。使用ulimit -a查看当前系统的默认文件打开数。编译

相关文章
相关标签/搜索