socket()失败:连接到上游时没有可用的缓冲区空间

在我的Ubuntu 10.04 VPS上,运行durpal站点的nginx(0.7.??)+ fcgi web服务器上有一个500错误,当我跟踪nginx错误日志时,我看到了很多这样的错误:

socket()失败:没有可用的缓冲区空间)连接到上游…,

我尝试过不同的configuration组合,但没有解决问题。 目前我有3个nginx工作者,保持活跃超时15秒和

PHP_FCGI_CHILDREN = 5 PHP_FCGI_MAX_REQUESTS = 1000

我真的很感激,如果你能build议解决这个恼人的问题。

你可能达到你的RAM或开放式套接字的限制。 用cat / proc / sys / fs / file-max检查套接字的数量,并用sysctl -w fs.file-max = [BIG NUMBER]

你的问题是在上游服务器,而不是在Nginx,但我只是猜测。

您可以将您的工作进程设置为4,然后尝试

添加更多的RAM或释放一些系统资源,为系统进程分配RAM。

¿你可以检查免费-mt或顶部,在错误发生的时间?