Я пользователь NGINX, я должен перейти на Cherokee?

Я использую NGINX на своем сервере в качестве WWW-сервера.

Теперь я видел, как чероки используются на некоторых страницах, таких как университетские веб-сайты.

Целесообразно ли использовать его, когда у меня есть динамический контент (часть в PHP, часть в Perl, другая в Lua, а другая в Python)?

Как Cherokee решает проблему C10K?

Мой сервер работает довольно медленно и не обладает достаточными техническими характеристиками (Intel Atom и т. Д.), Поэтому, пожалуйста, не советуйте Apache; Кроме того, я использовал Lighttpd, и мне это не понравилось. NGINX был лучшим, что я использовал до сих пор, но, может быть, Cherokee - лучшая альтернатива?

3 ответа

Я использую Cherokee для размещения приложения Django с использованием WSGI. Мастер "развертывания" приложения очень полезен, как и временный режим администратора / сервер.

Вы должны попробовать и сделать некоторые тесты. Для меня это стабильно.

Я настоятельно рекомендую вам попробовать. Мы использовали его некоторое время, и я должен сказать, что опыт был фантастическим.

Помимо легкости и высокой масштабируемости, он поставляется с графическим интерфейсом конфигурации, который позволяет настраивать каждый параметр веб-сервера.

В целом, он, по крайней мере, так же быстр, как Nginx (в некоторых тестах быстрее), его гораздо проще настраивать и администрировать (он строит графики использования, представляющие соединения, время ожидания и трафик), и поддерживается очень активным сообществом. (с общедоступным хранилищем исходного кода, системой отслеживания ошибок и т. д.).

Попробуйте, вам точно понравится.

@polemon,

Неустойчивая кривая является признаком того, что программа веб-сервера справляется с нагрузкой.

По мере роста параллелизма большинство программ для веб-серверов будут вводить этот тип шаблона (пока само ядро ​​ОС не станет причиной этой проблемы для всех приложений пользовательского режима).

Фотографии (максимумы и минимумы) обусловлены неспособностью программы своевременно реагировать. В результате некоторые потоки занимают больше времени, потому что они блокируются (истощение ресурсов ЦП), в то время как другие "освобождаются", забирая почти все ресурсы ЦП.

Единственный способ предотвратить это - написать код с минимальными затратами времени на выполнение (так что параллелизм не так уж и болезнен).

Надеюсь, что теперь все легче понять.

Другие вопросы по тегам