我使用apache基准来对我的localhost网站进行基准测试,但收到此错误:
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
我不知道还能做什么我真的希望这个工作我的系统RAM是5GB。
答案 0 :(得分:2)
您可以将文件描述符设置得非常高。我总是这样做:
/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
之后,您需要完全重新启动,因为您的shell可以使用这些设置。 小心这个设置。通常,您需要更严格地配置它。但在这种情况下,您似乎只是在虚拟盒上进行测试。