Apache + Passenger - Apache运行;但没有回应请求

时间:2010-07-11 08:37:46

标签: ruby-on-rails apache apache2 passenger

背景

我正在运行Ruby on Rails应用程序,该应用程序也必须提供大量静态文件。

我目前的设置是:

Debian Linux Lenny 5.0  Apache 2.2.9  乘客2.2.10

问题

一切都运行良好。我看到apache进程在旋转,乘客实例被创建,一切都快速而且快速。

然后,一段时间后Apache不再响应请求了。客户端确实获得了连接并且正在“等待响应”,但没有一个连接。

我无法手动重现此问题。有时它会在重启后几个小时发生,有时则需要几天才会发生。这是我发现的:

Apache进程正在进行;乘客在那里,但它没有任何实例旋转(可能是因为实例在一段时间不活动后死亡)

/ var / log / syslog,/ var / log / messages中没有错误消息或问题,不在apache的访问和错误日​​志中,而不在我的Rails生产日志中。没有。

当我停止并启动Apache时,一切都恢复正常。

有没有人知道这里发生了什么?它是如何解决的?

1 个答案:

答案 0 :(得分:0)

由于静态文件的负载很大,出于性能原因,我们决定在单独的服务器(后来的Amazon S3 + CloudFront)上托管静态文件。

我目前的猜测是,Apache无法应对静态文件也在做Passenger的大量请求。当前设置是Rails应用程序的Nginx + Unicorn和静态文件的S3 + CloudFront。

相关问题