Wordpress, производительность
Wordpress является одним из популярных блоговых движков, правда функциональность его в базовой комплектации от идеала конечно же далека. Помогают добиться всей нужной функцональности, ну или хотя бы приблизиться к вожделенному идеалу, плагины, коих написано программистами из разных частей света великое множество.К сожалению, wordpress написан так, что обилие плагинов сильно сказывается на производительности блога, поэтому важно соблюдать баланс. Кроме того, существуют специальные плагины,
имеющее целью повысить производительность, о них я сегодня и хочу поговорить. Собственно, к каждому плагину я делаю небольшой комментарий и в конце статьи поделюсь, что использую я.1. Плагин "Блокировка запросов на новые версии" от Ивана Калинина. Обновляться конечно нужно, но следить за выходом новых версий лучше вручную и лишними исходящими запросами сервер не напрягать. Видимо написана функция проверки обновлений как-то кривовато, поскольку отключение данной фичи с сомнительной полезностью способно на нагруженных блогах дать прирост производительности в разы.2. Плагин "WP Super Cache", автор Donncha O Caoimh. Принцип действия достаточно простой, при обращении к страничке или записи для нее делается статичная копия в директории с кэшем и в последствии отдается вместо генерирования новой, т.е. блог по сути превращается в набор статичных html-файлов, что естественно благотворно сказывается на самочувствии сервера сайт обслуживающего.3. Плагин "Hyper Cache", автор Satollo. Похож на предыдущий отличется поддержкой плагинов для мобильных устройств, умеет пожимать отдаваемое gzip'ом, в планах автора gzip'ить и весь кэш для этономии места и процессорного времени.4. Плагин "WP File Cache", автор Владимир Колесников. Вопреки мнению многих "специалистов" Wordpress является далеко не самым легким php-движком и подчас генерирует очень даже нехилую нагрузку на MySQL. Данный плагин отключает стандартное кэширование Wordpress, заменяя его собственным механизмом с сохранением "данных длительного использования" в файлах, количество запросов к базе падает в разы. А если еще и смонтировать директорию кэша как RAM-диск...У меня блог уже не маленький и сервится на текущий момент он связкой nginx+apache. Первым шагом на пути к повышению производительности стала ревизия среди подключенных плагинов, поскольку раньше я имел нехорошее свойство забывать отключать не нужное после тестов. Вторым шагом после обновления Wordpress до версии 2.8.4 стала блокировка обновлений и отключение в админке всяческих информеров, тянущих информацию с инета.Даже на этом этапе ускорение работы и снижение нагрузки на сервер уже стало заметным. Чтобы укрепить эффект было решено задействовать кэш.С первыми двумя у меня не заладилось. Заточены они исключительно под гордого индейца, мои попытки переписать правила mod_rewrite под nginx большим успехом не увенчались, работоспособности удалось добиться лишь частичной. В процессе гугления наткнулся на плагин, обозначенный в списке номером 4. Версия вроде не финальная, но подкупил плагин тем, что не требует плясок с .htaccess'ом в отличие от того же суперкэша. Решил попробовать да так на нем и остался и производительностью доволен, в планах определиться с необходимым размером кэша и сделать под него файловую систему в оперативной памяти, поскольку нагрузка на дисковую подсистему сервера и без меня достаточно высокая.З.Ы. И напоследок, всем кто пользует кэши - не забывайте отключать плагины перед обновлением движка, кучу времени и нервов поможет сэкономить, ведь время как известно деньги, а нервные клетки - не восстанавливаются.
Комментарий
tuupic
Кэширование в nginx намного прозрачнее и лучше, чем все эти приблуды.