Облегчаем жизнь серверу и ускоряем WordPress сайт

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

Ранее я рассматривал техники полного кеширования сайта, настройку собственного сервера (часть 1, часть 2, часть 3), использование YSlow для ускорения сайта. Но это еще не все! Я также применял технику спрайтов (и не только) на своем сайте и включал zlib сжатие. Как видите, много всего я перепробовал и рассказал вам. Но и это не все…

Сегодня я нашел интересный , который не претендует на уникальность – существует он достаточно давно, но просто он не так сильно распиарен, как Super Cache. Да, это кеширования, и называется он DB Cache Reloaded. Оригинал этого плагина (DB Cache) перестал поддерживаться и обновляться автором, потому Daniel Frużyński создал версию Reloaded, которая рассчитана для 2.8.x-2.9.x. К сожалению, для WPMU+BP плагин не предназначен (я проверял – чуть не убил demo.сайт).

Итак, в чем особенность DB Cache Reloaded? Он кеширует, но не всю страницу – а лишь запросы к базе данных. Этим он экономит место на вашем диске и меньше нагружает винчестеры хостера. Я не буду вдаваться в технические подробности его работы (большинству это не нужно), кому будет интересно, тот прочитает обо всем на странице плагина. Просто скажу реальные результаты его работы.

Главная страница моего сайта очень нагружена – я отображаю 61 запись на ней (когда посчитал – был в шоке!), не считая блока комментариев и популярных записей в сайдбаре. Итого выходило на главной 129 запросов к базе данных и почти 35 мегабайт памяти. Многовато, не так ли? И это при том, что я не использовал ни одного плагина кеширования!

После активации плагина DB Cache Reloaded и настройке его на соответствующей странице (я выставил жизнь кеша в течение 60 минут) вот мои новые результаты:

Сейчас: 23 запроса за 1.797 сек. | В кеше 106 запросов | Память – 27.07MB

Как видим, я значительно облегчил жизнь сервера, делая меньше запросов в базу примерно в 5 раз. Конечно же, это повлияло на скорость загрузки – на мой взгляд, увеличение заметно и невооруженным взглядом.

Скачать DB Cache Reloaded

На данный момент 75 комментариев

  • А с MU что делать, есть ли какой нибудь плагин?

  • slaFFik,
    а почему не отрабатывается кеширование на стороне php хостера?.. ведь если бы установленный eaccelerator выполнял бы свои функции, то потребление памяти было бы меньше на 40%..

    А вообще свой сервер лучше еще по одной причине – хостер грузит все модули php которые используют пользователи, а конкретному проекту на WordPress процентов 20 этих модулей не нужно..

    Кстати – могу предоставить местечко на своем сервере… для тестов производительности при максимальной оптимизации основы.. ну эт если будет желание

    totaliz,
    для MU можно использовать WP Super Cache, но осторожно :) но самое главное – любой серьезный проект на WP MU – это 100% отказ от услуг хостера с виртуальными серверами…

  • – это 100% отказ от услуг хостера с виртуальными серверами…

    Вот эту фразу не совсем понял, кто от чего должен отказаться, а на чем такой проект планировать, если не трудно, плиз

  • Любой серьезный проект (хотя бы несколько 1000 пользователей, из них несколько сотен активных – это уже серьезность) – это ОЧЕНЬ большое количество потребляемой памяти (шире – ресурсов)!

    Никакой виртуальный хостинг не даст это большое количество.. можно было бы снизить потребление некоторыми оптимизациями, но вот виртуальный хостинг это “как есть”..

    где то так…

    Но лучше наверное не в этой теме об этом… ИМХО

  • Александр, а какой примерно сервер (по параметрам) нужен, чтобы держать “хотя бы несколько 1000 пользователей”?

  • “А с MU что делать, есть ли какой нибудь плагин?” Поддерживаю вопрос

  • @wcp:
    Я подумаю, можно ли что сделать с этим плагином.

  • slaFFik если честно, очень бы хотелось увидеть статью по правильной настройке Super Cache (думаю это многим будет интересно), а также по разграничению прав на директории buddypress – проще говоря на какие папки нужно ставить 777, а на какие ни в коем случае нельзя ставить 777 :)

  • Что подразумевает под собой виртуальный сервер. Это технологии openvz, xen… Технология Xen лучше, не буду все описывать, кому интересно, почитайте документацию, просто разница, openvz юзает общее ядро всей системы, xen – для каждой виртуалки свое ядро, на реальном железе, ну навскидку, раза в три быстрее работает, то есть для wpmu+buddypress нужен не менее 1 GB оперативки, плагины кеширования… тратится время и ресурсы на первое создание кешированной страницы, очень трудно словить оптимальное время, при достижении определенного предела, когда много кешированных страниц, тоже начинаются сложности, DB Cache Reloaded пробовал, не работает, подтверждаю))я вот сам сижу и думаю, а что же мы хотели, естественно, большой проект, много ресурсов))

  • Потестите WP Super Cache Plus, на мой взгляд пока не обнаруживал траблы, автор утверждает, что он поддерживает eaccelerator, но я так и не разобрался как, мне доступно диск, memcached и memcached alt, у меня лучший результат показывает memcached alt, по скорости генерации страницы

  • Татьяна,
    если все оптимизировать.. то 1x3Ghz, 1Gb RAM вполне.. для совсем комфортной работы – 2Gb или сразу 4Gb (на перспективу)

    Игорь
    не заметил каких либо больших затрат по ресурсам при использовании WP Super Cache, хотя смотрел это на отдельном сервере (не виртуальный, не VDS и прочее)

    По поддержке WPSC eaccelerator.. не знаю.. почему они должны друг друга поддерживать?.. один файлики текстовые генерит, а другой запросы кэширует…

  • Александр, мне сложно объяснить, я не прогер, я все делаю только – сделал посмотрел, сужу только визуально, первый раз захожу на страницу – долго, смотрю время генерации, второй раз – очень быстро). Вообщем я остался на старой конфигурации научил nginx видеть super cache, super cache кеширует при помощи memcached alt, может я не прав, но тогда зачем для вордпресса всякие клиенты для eaccelerator написали, вот если объясните, буду признателен

  • Да, насчет временных затрат, все зависит от количества посетителей… в данный момент подключившихся к серверу

  • Игорь,
    генерация первый раз занимает достаточное время.. но при этом потребление ресурсов копеечное :)

    А вообще – WPSC надо аккуратно использовать на WP MU.. поддержка то есть.. но “как есть”

  • Александр по поводу вашего ответа Татьяне “если все оптимизировать.. то 1×3Ghz, 1Gb RAM вполне.. для совсем комфортной работы – 2Gb или сразу 4Gb (на перспективу)”

    это на несколько тысяч одновременно, на несколько тыс, просто “регулярно активных” юзеров или вообще на несколько тыс в сутки? XD извините за нубский вопрос

RSS лентаTrackBack URL

Включиться в обсуждение

XHTML: <blockquote></blockquote> <a href=""></a> <strong></strong>

Если нужно разместить код, используйте теги: <pre>php|html|js</pre>