Apache Benchmark Error: слишком много открытых файлов
Я использую Apache Benchmark для тестирования моего локального сайта, но получаю эту ошибку:
uday@uday-VirtualBox:/$ ab -n 2000 -c 2000 http://localhost/
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 localhost (be patient)
socket: Too many open files (24)
Я попробовал все ulimit -n, меняя файл /etc/sysctl.conf
за fs.file-max = 700000
, Это может помочь
sysctl -a | grep file
fs.file-nr = 6816 0 700000
fs.file-max = 700000
Я не знаю, что еще делать, я действительно хочу, чтобы это работало, моя системная оперативная память составляет 5 ГБ.
1 ответ
Вы можете установить дескрипторы файлов очень высоко. я всегда делаю это через:
/etc/security/limits.d:
# set a high rate of file descriptors.
# for api and high traffic, high connection rate server.
# Setting for all users because if a user restarts the server,
# the process of the server has the same value the user had as nofile.
#
* - nofile 250000
После этого вам потребуется полная перезагрузка, так как эти настройки унаследованы вашей оболочкой. Будьте осторожны с этим параметром. Обычно вам нужно настроить его более строго. Но в этом случае кажется, что вы просто используете его для тестирования на виртуальной коробке.