我在 64 位 Ubuntu Server 11.10 上安装了 nginx 和 php-fpm。服务器运行正常,但我正尝试使用 ab 测试 10,000 个并发连接。当我尝试时,我得到了socket: Too many open files (24)
。
我尝试了一些涉及 pam.d 和安全配置的更改,但没有任何效果。任何帮助都将不胜感激。谢谢
答案1
找到了解决方案。我看错了。nginx 没有给出任何错误。是我运行 ab 的 Ubuntu 客户端给出了错误。服务器很好。
解决方案(在客户端即运行 ab 的机器上执行):
sudo su
这是根
ulimit -n 20000
这是为了允许超过 10000 个连接。我随机选择了 20000 个。
请注意,这些不是永久设置,一旦您重新启动就会重置。
请查看以下文章,了解客户端方面的更多调整 -https://serverfault.com/questions/10852/what-limits-the-maximum-number-of-connections-on-a-linux-server