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查看當前系統的默認文件打開數。編譯

相關文章
相關標籤/搜索