Назад | Перейти на главную страницу

Рекомендация по кэшированию Wordpress Nginx 2016

Я провел много исследований, но нигде не видел конкретных рекомендаций по кешированию для конфигурации моего сервера.

    DO single Droplet 2GB Ram
    Ubuntu 16
    Nginx 
    Php-fpm 7 
    Mysql 
    SSL
    must cache logged in users too

Общий кеш W3 не очень хорошо работает с этой настройкой, поэтому я думаю о том, чтобы отказаться от всего этого. Это оставляет меня без кеширования, без CDN на данный момент.

Любая помощь, указывающая в правильном направлении в отношении моих потребностей в кешировании, была бы очень признательна.

Я написал обширную статью о Nginx и Wordpress, в которой особое внимание уделяется производительности, кешированию и CDN. Вы можете прочитать руководство из шести частей Вот.

SF любит резюме в посте на случай исчезновения веб-сайтов. Трудно обобщить учебник, состоящий из десятков страниц, на написание которого ушли месяцы, но вот что:

  • По возможности не вызывайте PHP. Даже вызов PHP медленный, выполнение медленное и использует много оперативной памяти и процессора.
  • Используйте кеширование страниц Nginx, если ваш сайт обслуживает значительное количество анонимных пользователей. Если ваш контент часто меняется, вы можете использовать микрокеширование, если контент кэшируется даже на 1 секунду на загруженных сайтах, это может значительно снизить нагрузку. Кэширование страниц может повысить производительность сайта на один-два порядка.
  • Будьте осторожны, чтобы не кэшировать страницы для зарегистрированных пользователей или от них.
  • Правильно настройте заголовки кеширования и используйте CDN, например CloudFlare, вместе с CloudFlare PageRules, чтобы правильно настроить кеширование для различных разделов вашего веб-сайта. например, страницы администратора не должны кэшироваться. Вы даже можете кэшировать свои страницы в CloudFlare, хотя это означает, что у вас нет хорошей веб-статистики на вашем сервере - используйте Google Analytics или аналогичный

Обновление - сайты с большим количеством авторизованных пользователей

Вы не можете кэшировать страницы для вошедших в систему пользователей по мере их настройки, поэтому вам нужно вернуть кеширование в стек, в первую очередь кэширование базы данных и объектов. Общий кеш W3 полезен, и вы можете интегрировать его с Redis / Memecached в качестве хранилища данных. Используйте CDN, чтобы уменьшить нагрузку на сервер и задержку, хотя обслуживание статического контента из Nginx не займет много времени на сервере.

Wordpress и PHP в целом довольно ресурсоемки, поэтому вам нужно убедиться, что у вас достаточно ресурсов - PHP требует и ОЗУ, и ЦП. Сколько именно зависит от вашей нагрузки. Поставщики облачных услуг помогают в этом, так как вы можете масштабироваться, если вам регулярно требуется больше ресурсов, или вы можете использовать AWS или аналогичный и масштабировать в периоды высокой нагрузки. Это может значительно усложнить вашу систему, поскольку вам нужны общие каталоги для статического контента в Wordpress (изображения), балансировки нагрузки и т. Д.