LightHttpd против Nginx
Хорошо, я видел этот вопрос довольно много раз здесь, на SO, а также в других местах в Интернете. Но.. они все довольно старые, поэтому я опубликую это снова.
У меня есть следующие потребности:
Возможность обрабатывать много одновременных HTTP-соединений (например, кометы). Вот почему я смотрю на другие веб-серверы, а не на Apache.
Должно быть легко установить и запустить PHP
Нужен обратный прокси для направления определенных запросов на альтернативный веб-сервер (apache или yaws) на другой порт.
Я знаю, что nginx не имеет быстрой поддержки cgi по умолчанию. Хотя lighthttpd, кажется, имеет это, я читаю жалобы на утечки памяти. Проблема утечки памяти все еще распространена?
Что бы вы порекомендовали сейчас: nginx или lighthttpd? Или что-то другое? Зачем?
1 ответ
Оба имеют довольно отличную производительность. Использовать FastCGI с Lighttpd немного проще, потому что он может порождать процессы сам по себе (недостатком является то, что он запускает серверы fastcgi от того же пользователя, что и веб-сервер), в то время как nginx требует немного ручной работы. Оба прекрасно способны выступать в роли обратного прокси-сервера и балансировщика нагрузки.
Если вам нужна хорошая производительность, я бы также предложил использовать nginx в качестве внешнего интерфейса для обслуживания статических файлов и серверного Apache. Хотя для этого требуется больше оперативной памяти, nginx+apache2+mod_php несколько быстрее, чем nginx+php-fastcgi. Однако в настоящее время у меня нет доказательств, так что примите это утверждение с недоверием.
Кроме того, IMHO nginx имеет несколько более удобный для пользователя синтаксис файла конфигурации, но мнения могут отличаться.