Снижаем нагрузку на сервер и ускоряем сайт с помощью плагина Hyper Cache
Всем привет!
Рад всех вас приветствовать. Я снова на связи после долгого отсутствия. Наверное, многие из вас заметили, что Блогоника была недоступна в течение пары дней (в пятницу и субботу). Все, кто пытались зайти на мой блог, получали сообщение об ошибке (что-то про недоступность сервера или базы данных — я уже точно не помню). Сейчас расскажу, почему так было, что произошло и как мне удалось все исправить. Сразу скажу, что я потерял связь сразу со всеми своими сайтами, расположенными на том же VPS сервере, что и Блогоника. Дело было так.
Проснувшись утром в четверг, я полез проверять электронную почту и получил сообщение очень неприятного характера:
У меня образуется паника. Я не знаю, что мне делать и как быть. Ведь я не представляю, что за нагрузка и из-за чего она может образоваться. Естественно, вся логика отключилась в мгновение. Пошел по ссылке посмотреть, что за серверы мне предлагают арендовать для решения проблемы. В ужасе смотрю на цены, которые в 10 выше, чем я плачу сейчас. Пытаюсь понять, что мне делать…
После того, как немного пришел в чувства, решил пообщаться со службой поддержки хостинга. Написал им письмо и стал ждать. Ответ пришел через полдня. Ничего вразумительного мне не ответили. Я снова отправил им сообщение и решил попытаться все решить своими силами. Решил попробовать перейти на более высокий тарифный план VPS, который был дороже предыдущего в 2 раза, но дешевле Dedicated серверов, как минимум в 5 раз. Перешел, написал сообщение о проделанных действиях в саппорт. К вечеру получил ответ. Ничего конкретного, но вроде бы как все нормально.
Я радуюсь, что проблема решена и… Через два часа в десять часов вечера мне приходит новое письмо:
Вот так-то. После этого все мои сайты погрузились во тьму. Я снова написал письмо в службу поддержки и, не дожидаясь ответа, сразу же стал звонить на их контактный телефон. Дозвонился, пообщался, сказали, что ничем помочь не могут. Рег.ру (который я хвалил в свое время в одном из постов) — не занимается настройкой и техническими проблемами с сайтами клиентов. Вот такие дела. Я стал настаивать, чтобы мне как-нибудь помогли, так как сам не знал, как решить проблему. Сказали, что нужно вмешательство программиста (моего программиста) или переход на Dedicated сервер (то есть, отдельный собственный сервер). В отчаянии я решил, что переход на дорогостоящий сервер неизбежен. Но денег на вебмани не было. Пришлось ждать утро.
Утром перевел нужную сумму денег на свой счет, заказал сервер на 2 месяца и стал ждать его активации. К обеду (в пятницу) все активировали. Я написал в поддержку, чтобы начали переносить сайты, как можно быстрее. Ответ в пятницу так и не пришел. Начал дозваниваться в субботу. Дозвонился с пятого раза. Стал узнавать, что там с переносом. Оказывается, по субботам «переносчики» у них не работают и мой запрос еще даже не начали обрабатывать. У меня вновь началась паника. Вторые сутки не работают сайты. Я теряю посетителей и прибыль. Нужно было что-то делать.
И тут произошло чудо. Включились мозги, вернулась логика. Я зашел в аську и написал своему знакомому программисту — Алексею. Он много раз выручал меня с моими сайтами. Он как раз был в сети. Я отправил ему письмо с непонятными цифрами и буквами, которое мне присылали хостеры. Он посмотрел, сказал, что точно сказать не может (он был на работе), но что-то связано с просмотрами. Возможно с каким-то плагином. И тут меня осенило.
У меня на всех сайтах стоял плагин WP-postview. Он считал количество просмотров каждой страницы. А теперь представьте — на сайте более 1000 публикаций, на каждой странице стоит счетчик, и он постоянно меняется, то есть постоянно взаимодействует с сервером.
Я решил попытаться найти что-нибудь по своей версии. Полез в Гугл и нашел десятки похожих случаев проблем с нагрузкой, блокировкой сервера и жалобами хостеров. И почти везде причиной был плагин WP-postview! Итак, вероятная причина была найдена (я был в этом уверен на 99%). Теперь нужно было попросить хостеров включить мне доступ. Я написал письмо, но потом вспомнил, что, хотя сайты и не работают, доступ через панель администрирования к файлам у меня есть. Я зашел ,удалил ненужный плагин со всех сайтов и написал об этом хостерам. После этого пошел мучить 3Ds Max и ArchiCad, вместе с Photoshop, чтобы хоть как-то отвлечься.
Ответа все не было. Чуть позже я открыл браузер, где как раз была открыта страница одного из моих сайтов. И — О, чудо! — он загрузился. Более того, на счетчике было около 100 посетителей за сегодня. Чуть позже пришло письмо, в котором хостеры сообщили, что нагрузка снизилась, но выходные дни — не показатель (посещаемость ниже), и нужно понаблюдать еще. Прошли сутки — я получил сообщение, что нагрузки нет, и если она появится, мне дополнительно сообщат. Проблема была решена. Теперь только нужно вернуть им Dedicated сервер и перевести деньги за неиспользованный период в счет оплаты моего действующего VPS. Вот такие дела.
Но это еще не все. Я решил не останавливаться и попробовать еще больше оптимизировать работу сайтов. Произвел кое-какие настройки внутри шаблонов (об этом, возможно, расскажу позже). Полностью удалил с блогов неактивные плагины (оказывается, даже в неактивном состоянии они постоянно нагружают сервер) и решил настроить кэширование.
Полез искать WordPress плагины для кэширования страниц. Если кэширование не настроено, то при каждом обращении пользователя, WordPress обращается к базе данных и формирует готовую страницу. То есть, этой страницы нет на сервере в формате html, она каждый раз формируется заново. А теперь представьте, что происходит, когда, например 100 пользователей одновременно открывают страницы. Происходит огромное количество запросов. Увеличивается нагрузка и снижается скорость работы сайтов. А плагины кэширования создают и хранят на сервере готовые страницы. То есть, страница создается при первом обращении пользователя, а далее она просто открывается при запросе другими пользователями. Надеюсь, вы что-нибудь поняли.
Изучив несколько вариантов таких плагинов, я остановился на самом оптимальном варианте — Hyper Cache. Он отличается простотой настройки и высокой эффективностью в ускорении сайта. Для установки и настройки я пользовался этой инструкцией с замечательного блога KtoNaNovenkogo.ru. Рекомендую ознакомиться, там все очень подробно расписано.
После установки и активации плагина, нагрузка на сервер еще больше снизилась, а скорость загрузки сайта увеличилась в 4-5 раз. Я очень доволен.
А Вы используете плагины кэширования?
Я пользуюсь суперкеш. но как мне кажется. на одном из блогов именно он создает какие-то странные фортели, что потом не могу войти в админку. Вообще. хотела в самом начале Hyper Cache поставить, но мне показались настройки там слишком мудреными. А теперь попробую.
Кстати, именно у Дмитрия инструкция по установке плагина слишком мудрено написана, вернее он как всегда с перелинковкой настолько мудрит, что можно в трех соснах заблудится.
И забыла добавить. что даже после установки плагина кеширования и еще разных манипуляций все равно периодически приходят от хостера письма о превышении нагрузки. Такие превышения иногда связаны с атаками.
tanichka, удачных Вам экспериментов!
Я долго выбирал, остановился на этом плагине. Он, как раз, показался самым простым в установке и настройке. Кроме того, мне попадались тесты разных плагинов кэширования — этот оказался самым эффективным.
Спасибо за статью Олег. Давно задумываюсь над ускорением своего блога, нужно попробовать.
Евгений, всегда рад помочь. Успехов с ускорением!
Месяцем раньше столкнулась с похожей проблемой, описанной в Вашей статье.
На сайтах тихо-мирно стоял другой плагин кэширования, и вдруг — неожиданное предупреждение от хостера о критическом превышении количества файлов на аккаунте. Лишние файлы удалила, через несколько дней — их количество опять зашкалило.
В техподдержке посоветовали сменить плагин на Hyper Cache — и, действительно, проблема решилась. Похоже, на сегодняшний день этот плагин самый оптимальный.
This is a really inelglietnt way to answer the question.
thank you article,help me a lot
Анжела Матвеева, а какой плагин вы использовали ранее?
greyson, всегда пожалуйста!
Тоже использую этот плагин на одном своем блоге. Очень полезный плагин.
Пока с подобной проблемой не сталкивался, по причине низкой посещаемости ресурса, но плагин уже стоит — сыграл на опережение )
Установил себе этот плагин, посмотрим как проявит себя
Олег Маркарьян пишет: а какой плагин вы использовали ранее?
Раньше стоял плагин W3 Total Cache — год работал нормально, а потом после обновления Вордпресс неожиданно стал чудить)
Я на 0,5 сек разогнал сайт;)
Уже использую этот плагин, очень нравится, действительно ускоряет загрузку, что очень важно.
Блоgгер, согласен на 100%.
Виктор, и правильно сделали!
Михед, думаю, останетесь довольны. Сайт станет быстрее.
Анжела Матвеева, буду иметь в виду. Спасибо.
Виталик, хороший результат.
Михаил, это точно. Поисковики также лучше относятся к быстрым сайтам.
[…] доступную нагрузку, я уже рассказывал в одной из прошлых публикаций. Кому интересно, почитайте. Чтобы не сталкиваться с […]
такси в аэропорт шереметьево
ñàéò — òàêñè Äâèæîê Ñàìàÿ íåäîðîãàÿ óñëóãà ó íàñ ýòî ÑакÑи в аÑÑопоÑÑ ÑеÑемеÑÑево
Очень актуальная тема. Уже сделала на своем сайте. Скорость в разы увеличилась.