Nginx хостинг WordPress

Это гость пост написан Остин W Гантер, Брэнд посол Managed WordPress хостинг платформы WP Engine.

Разработка WordPress была переплетена с Apache с самого начала. WordPress был построен, чтобы быть подан на Apache. Недавно Nginx поднялась на видное место, чтобы обслуживать трафик с 11,4% от всех известных трафика.

Automattic переехал WordPress.com к Nginx, и управляется WordPress хостов как WP Engine, и ZippyKid приняли технологию. WordPress.com публично заявили, что они имеют тысячи серверов, обслуживающих сотни тысяч запросов в секунду. Я провожу большую часть моих дней говорить о сложной серверной технологии, но я не нашел хороший ресурс на самом деле объяснить, в разговорных терминах, почему Nginx крута, почему люди используют его, и то, что компромиссы между ним и Apache. Это сообщение предназначено, чтобы объяснить, что Nginx находится на высоком уровне, не обеспечивает «как» для людей, которые могут захотеть установить его сами.

Nginx общего хостинга WordPress C10K выступает за одновременные

Во-первых, Nginx и Apache не равны, но то, что делает их разными? Что делает Nginx подходит для обработки высокой производительности веб-хостинга задач - таких, как обслуживание натиска одновременных запросов, когда пост делает на первой странице HackerNews или Reddit? Что вы по-прежнему нужен Apache для?

CK10 проблема

Nginx был разработан, в частности, для решения проблемы C10K или оптимизации программного обеспечения веб-сервер для обработки большого количества клиентов, в то же время. C10K означает одновременно десять тысяч соединений. Когда блог попадает на первую страницу HackerNews или Reddit, тысячи посетителей могут сразу приходят на ваш сайт. Nginx этого события на основе и является фантастическим на удовлетворение одновременных запросов.

Одновременные подключения

Nginx предназначен для обработки тысяч одновременных соединений с низким уровнем использования процессора. Это неблокирующая управляемой событиями веб-сервера, с использованием одного процесса (или небольшое число процессов) для обработки соединений с использованием evented ввода / вывода. Apache имеет несколько модулей Multi-Processing ( «MPM»), но для большинства систем Linux, по умолчанию Apache является «PreFork» MPM. Apache рекомендует использовать «рабочий» MPM, если вы не используете PHP - поскольку PHP не поточно. Кусок кода потокобезопасно, если он манипулирует только общие структуры данных, таким образом, что гарантирует безопасное выполнение нескольких потоков одновременно. событийный Nginx в»дизайн позволяет ему обслуживать данные быстро, и с большим количеством одновременных соединений, но мы жертвуем способность Apache для обработки PHP

Кроме того, Apache ограничен, сколько потоков имеет процессор для запуска, и Apache процессы являются дорогостоящими. В 50-300MB в процесс, после того, как параллельные процессы, по умолчанию 256, производительность Apache будет уменьшаться. Nginx, с другой стороны, может обрабатывать одновременные соединения 10,000, используя около 2 Мб памяти, никогда не порождая новые потоки или процессы. Это абсурдно масштабируемым.

хостинг

Статические активы

Nginx король сервировки статики. Где Apache должен загрузить mod_php в память служить запрос изображения, Nginx будет поставлять статику, такие как изображения, JavaScript, CSS, HTML и т.д. непосредственно в браузере с его молниеносно ввода / вывода. Концептуально, Nginx просто передает данные, никогда не обрабатывать его, поэтому он требует так мало ресурсов для запуска.

Так как же мы переводим WordPress PHP с Nginx? Apache часто связывает PHP с его процессами, но для обработки PHP, Nginx должен быть соединен с внешним процессом как FastCGI, PHP-FPM, или HTTP. Это можно сделать довольно легко. Более того, путем разделения процессов мы можем фактически видеть больше прибыли скорости с Nginx. Он будет передавать запросы на обработку PHP внешне, и отправить ответ обратно в браузер.

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

Proxy Caching

WordPress.com широко использует способность Nginx к proxy_cache. Вы можете запрограммировать Nginx для отправки запросов на внутренний интерфейс, но на обратном пути из у него держать запрос на диск для «Х секунд», так что последующие запросы могут служить страницы без необходимости вернуться к Apache для каждого нового пользователя.

Модули третьей партии

С Nginx приобретает известность, мы видим, разработчики начинают создавать классные модули можно компилировать в Nginx, добавляющие функциональность мы, возможно, потребуется. Как и с любым открытым исходным кодом проекта, эти модули, вероятно, будет основным источником инноваций на веб-сервере.

Таковы некоторые огромные преимущества. Но важно отметить, что Nginx не является подходящим решением для совместного хостинга, и это, безусловно, не является необходимым для повседневной WordPress блогов, которые не видят высокий уровень трафика. При минимальном трафике, посетители могут не заметить разницы скоростей между Apache и Nginx. Вы хотите, чтобы служить WordPress прочь Nginx, если вы планируете когда-нибудь испытать всплесков трафика, и вы хотите сохранить ваш сайт и загрузки страниц на суб 1.5seconds. При обработке на основе событий в нагрузке Nginx, в способности быстро обслуживать статику, и просит proxy_cache дать ему возможность обслуживать десятки тысяч соединений на 2Мбах CPU. То же движение может вызвать Apache совершить харакири.

Поскольку Nginx настолько масштабируемая, Automattic, WordPress.com, и управляемые WordPress хосты, как WP Engine или ZippyKid приняли технологию, как правило, вместе с Apache служить PHP, и использует его, чтобы обеспечить масштабируемую хостинг для десятков тысяч доменов. Apache остается место для обработки сложных запросов, но он не может идти в ногу с масштабируемостью Nginx.

Что ваш сайт работает на? Рассматривали ли вы установку Nginx служить WordPress? Дайте мне знать в комментариях, что вы используете.

Перешел на Nginx несколько недель назад после того, как растет устал получать электронные письма от моего хозяина сказать, что я бы пошел по моему выделению памяти. Отработанные часы, пытаясь настроить мой сайт, чтобы справиться с интенсивным движением на Apache, но не количеством кэширования .htaccess твики сделал разницу. Перешли на Nginx, создал основную .conf и не оглядывался назад. использование оперативной памяти находится под контролем и сайт более отзывчивый. Brilliant.

Я переключился на Nginx один год назад. Я был очень interessted в проект и не нравится Lighttpd.
Оказывается, Nginx просто fantiastic, и, безусловно, путь.
Маршрутизация запросов с Apache feeld любопытное глупо мне в наше время ...

Понимаю. Вот почему некоторые сайты (а на самом деле тонн из них), даже если они работают на Apache, все еще работает лучше, чем те, кто с NGIX.
О, кстати, насчет LiteSpeed? Любой комментарий WordPress работает на LiteSpeed? LiteSpeed ​​утверждает, что они 6е быстрее, чем Apache

Я не думаю, что Nginx работает лучше, чем Apache, а не на WordPress сайта. PHP и Apache, как братья и многие скрипты написаны с Apache в качестве первого выбора веб-сервера, единственная проблема в том, в то время как Nginx является «современным» и обрабатывает пакет трафика очень хорошо, Apache остается «древний» и всегда нацелены на всемерное производительности. Проблема трафик взрыва может быть обработана с балансировкой нагрузки. Мне нравится Apache из-за его все круглые выступления. WordPress не подведет смело сказать, что они не имеют ничего против Nginx, но Apache все еще остается первым выбором - codex.wordpress.org/Nginx

Столкнулись любой производительности бенчмаркинга, чтобы увидеть, если Nginx на самом деле работает лучше или хуже в вашей среде? Это одна вещь, чтобы подумать и почувствовать это, но это еще одна вещь, чтобы проверить это.

Мы используем Nginx здесь на WPForce.com, и она работает очень хорошо, гораздо лучше, чем когда-либо Apache сделал для нас.

Точно так же, как и WordPress.org WordPress.com работать на Nginx - WordPress.com является крупнейшей установкой WordPress в Интернете.

Так что я недавно мигрировал с одного хоста на другой. Предыдущий хозяин был мой WP сайт работает на Apache. Когда я настраивал на новом хосте, по умолчанию был Fast-CGI (и Nginx я полагаю) и не заметили, или обратить внимание на разницу.

Все было отлично работает, и быстро, на новых VPS, но через несколько дней я начал сталкиваться с «502 плохой шлюз ошибок - Nginx» ошибки. Это происходит, когда я отправляю сообщение в блоге, и нажмите на кнопку «Предварительный просмотр». Я до сих пор могу опубликовать этот пост, но когда я там много частей страницы разбитой (различные PHP звонков и т.д.), но пост есть и в такте.

Я могу восстановить сайт назад к предыдущей точке и устраняет проблему в течение нескольких сообщений (или дня), а затем проблема возвратов.

Я добавил 3 новых плагинов, когда мигрирующие (безопасность, adrotate и супер кэш). Я попытался удалить плагин безопасности и adrotate, чтобы увидеть, если это проблема, и проблема остается. только один я не снял супер кэш.

любые идеи о том, что может быть причиной этих 502 испорченных шлюз? Никогда не было это при работе на апача.

Статьи по Теме

MAMP жить сервер WordPress хостингЗдравствуйте, я начал иметь некоторые проблемы в последнее время с WordPress сайтом, который я построил, используя MAMP, а затем переведен в реальный сервер. Я бы построил сайт и запустить его, он выглядел хорошо, то ...
Веб-хостинг для WordPress австралийцаЕсли вы хотите быстро и отзывчивый сайт, вам необходимо разместить его как можно ближе, как вы можете, где вы находитесь. При просмотре сайта, вы делаете запросы туда и обратно от сервера, и дальше ...
Само хостинг против Wordpress плагиновТим Дорра / Flickr Когда речь идет о создании вашего сайта автора, один из наиболее запутанных тем сам-хостинга: что это значит, почему это выгодно, и когда вы должны это сделать. Какие...
Лучший хостинг для Wordpress Australia ZooСегодня я хочу взглянуть на то, как многие из верхней WordPress хостинг компании измерения по сравнению с чисто точки зрения производительности. Теперь я буду первым, чтобы признать, что наличие быстрых серверов ...
Skadate требования к хостингу для WordPressДля запуска WordPress мы рекомендуем хост поддерживает: Это действительно так. Мы рекомендуем Apache или Nginx в качестве наиболее надежного и функционального сервера для запуска WordPress, но любой сервера, который поддерживает PHP ...