2010-07-11 7 views
3

ФонApache + Passenger - работает Apache; но не отвечает на запросы

Я бегу Ruby On Rails приложение, которое должно служить много статических файлов, а также.

Моя установка в настоящее время:

Debian Linux Lenny 5.0 Apache 2.2.9 Passenger 2.2.10

Проблема

Все работает отлично. Я вижу, что процесс Apache разворачивается, создаются пассажирские экземпляры, и все работает быстро и быстро.

Затем, через некоторое время, Apache больше не отвечает на запросы. Клиенты действительно получают соединение и «ждут ответа», но никто не приходит.

Я не могу воспроизвести эту проблему вручную. Иногда это происходит через несколько часов после перезагрузки, иногда это занимает несколько дней. Вот что я нашел:

Apache процесс вверх; Пассажир есть, но у него нет ни одного экземпляра (возможно, потому что экземпляры умирают после периода бездействия)

Нет сообщений об ошибках или проблем в/var/log/syslog,/var/log/messages, а не в apache и журналы ошибок, а не в журнале обработки Rails. Ничего.

Когда я останавливаюсь и начинаю апач, все возвращается в норму.

Есть ли у кого-нибудь какие-либо сведения о том, что здесь происходит? И как это можно решить?

+0

В качестве дополнительного примечания; Мы запускаем mpm_worker из-за Passenger. По умолчанию для MaxClients установлено значение 200. Мы уже увеличили это до 1000 (и ServerLimit до 50). Но у нас все еще есть те же проблемы. – Ariejan

+0

, когда это произойдет, будут ли изменения в access_log, если вы попытаетесь отправить запрос? и что будет, если вы выключите пассажира, когда это произойдет. или просто изящный перезапуск http – Falcon

+0

Возможно, вы захотите попробовать nginx с пассажиром, чтобы определить, есть ли проблема в Apache или пассажире. – inntran

ответ

0

Из-за огромной нагрузки на статические файлы мы решили разместить статические файлы на отдельном сервере (позднее Amazon S3 + CloudFront) по соображениям производительности.

Мое последнее предположение: Apache не справляется с большим количеством запросов на статические файлы и также делает Пассажир. Текущей настройкой является Nginx + Unicorn для приложения Rails и S3 + CloudFront для статических файлов.

Смежные вопросы