Memcached — дьявол в мире кэша

/, сайтостроение/Memcached — дьявол в мире кэша

Кэширование данных сайта является одной из самых важных функций, благодаря чему увеличивается скорость загрузки вашего сайта и снижается нагрузка на хостинг. В ходе экспериментов с методами кэширования, в настоящий момент я для себя выбрал Memcached, он показал самые впечатляющие результаты. До этого, из последних, я использовал небезызвестный плагин WP Super Cache, который толком ничего не ускорял, может какие-то доли секунд, не более того. Зарубил я его!

Подробнее о Memcached

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

Сервер Memcached еще называют «демоном». И это действительно соответствует названию. Потому что работает Memcached молниеносно. Рассмотрим его действие на практике.

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

А на сцену выходит наш герой Memcached. В мгновение ока он отдает пользователю уже готовую страницу из своего кэша без всяких там куда-то запросов, он уже все заранее заготовил. И эта отдача происходит всего за 0.001-0.005 с, молниеносно, так как достаточно только обратиться к ключу заготовленного типа кэша. По крайней мере, у меня обычно за такое время идет ответ на запрос. Если же страница еще ни разу не запрашивалась и ее нет в кэше, то Memcached также быстро ее внесет в базу кэша и подаст на блюде.

Немного фактов. Программное обеспечение Memcached используют такие монстры, как: Wikipedia, Youtube, Twitter, Facebook, WordPress.com…

Как установить Memcached

Здесь существует несколько способов. Один из более сложных для начинающих вебмастеров, это установка Memcached на свой хостинг, если вы обладаете нужными правами админа. Что больше подходит для VPS — виртуальный выделенный сервер. Также можно скачать и установить программное обеспечение Memcached с оф. сайта (http://memcached.org/) на свой компьютер, будет собственный локальный сервер кэширования.

Эти два вышеперечисленных способа и ряд других могут вызвать много трудностей у новичков, достаточно взглянуть на мануалы в интернете по установке Memcached. Мы рассмотрим более легкий и удобный вариант — это установка Memcached с помощью плагина W3 Total Cache. Внимание! Есть маленькая иголка в стоге сена — ваш хостинг должен уже иметь настроенный Мемкеш. Это можно узнать в службе поддержки сервера. Большинство известных хостингов предоставляют такую возможность.

W3 Total Cache + Memcached

Плагин W3 Total Cache является очень популярной системой кэширования. Можно даже сказать, что лучший среди себе подобных. Именно он и стоит сейчас на моем сайте. Я не буду описывать его установку с настройкой, так как не хочу переписывать стотысячный раз одно и то же. Этого добра в интернете навалом, разберетесь без труда. Наша миссия — это Memcached (Мемкеш).

Заходим в настройки плагина W3 Total Cache, а именно в General Settings. А далее все просто как дважды два! В выбранных вами типах кэша (page, database и др.) в поле метода кэширования (Cache Method) выбираем наш Memcached. Если ваш хостинг имеет в своем арсенале Мемкеш, то он будет активен для выбора.

memcached-настройка

Не забудьте сохранять настройки под каждой опцией.

Проверка работы Memcached

Чтобы проверить корректность работы Memcached, проделываем следующее. Нужно выйти из админки сайта и зайти заново на сайт в качестве гостя, или откройте страницу в режиме инкогнито. На любой из страниц нажмите CTRL+U, в исходном коде должно быть примерно так.

установка_memcached

Самые важные строчки в нашем случае, это:

  1. Engine — название метода кэширования.
  2. Caching — enabled (система кэширования включена).
  3. Status — показывает статус страницы, в кэше она или нет. Сразу могут не все страницы закэшироваться, но с посещением их пользователями все войдет в кэш.

Также можно увидеть число закэшированных объектов (2) и скорость загрузки страницы (1). Но эти дополнительные параметры отмечаются галочками отдельно в настройках W3 Total Cache (General Settings — Debug), я их специально отметил и выставил для показа эффективности Memcached. Как видите скорость отдачи страницы пользователям впечатляет — 0,004 с. Если далее походить по страницам, попавшим в кэш, то все грузится почти моментально. Действительно — демон!

На этом все. Эксперимент с методом кэширования Memcached я провел и пока мой выбор остановлен на демоне. Но это всего лишь пока. В дальнейшем я хочу еще испытать некоторые системы кэша, о чем вам непременно расскажу в статьях.

About the Author:

9 комментариев

  1. Алексей 11.09.2015 в 21:49- Ответить

    Благодарю за хороший скрипт, верней инфу о нем, но у меня подключен ко всем сайтам xcache.

  2. Янис Рокерский 11.09.2015 в 22:13- Ответить

    Хм, интересно… У меня тоже есть возможность подключить xcache (он активен в выборе), но ведь он не относится к shared хостингам. У вас VPS?

  3. Алексей 11.09.2015 в 23:09- Ответить

    Я сейчас перешел на adminVPS, там подключают систему автоматом.

    • Янис Рокерский 11.09.2015 в 23:17- Ответить

      У меня тоже есть мысли перейти к VPS…

  4. Алексей 12.09.2015 в 08:29- Ответить

    Туда сейчас можно перейти бесплатно на год и перенос тоже сделают бесплатно. Вот их условия:

    от 200 посетителей в сутки — тариф Start на 1 год бесплатно
    от 400 посетителей в сутки — тариф Standart на 1 год бесплатно
    от 600 посетителей в сутки — тариф Pro на 1 год бесплатно
    от 1000 посетителей в сутки — тариф VIP на 1 год бесплатно

    Эти тарифы ничем не отличаются от платных, которые мы предлагаем своим клиентам. Помимо сайта advdk.com вы можете размещать на тарифе и другие ваши сайты по желанию. Если требуется, то мы бесплатно перенесем ваш сайт к нам на хостинг быстро и абсолютно бесплатно. Мы оказываем круглосуточную техподдержку и услуги администрирования бесплатно для всех клиентов.

    Условия получения бесплатного хостинга на 1 год:
    1. Через 1-2 месяца пользования хостингом написать развернутый отзыв или обзор на сайте.
    ИЛИ
    2. Разместить на сайте нашу кнопку или баннер на время пользования хостингом.

    • Янис Рокерский 12.09.2015 в 15:51- Ответить

      Меня Beget так очень даже устраивает, не охота менять место дислокации. Но в любом случае спасибо за информацию, присмотрюсь, тем более обзор написать не проблема.

  5. Александр 15.09.2015 в 10:16- Ответить

    Спасибо за полезный пост. Протестирую эту штуку на своем сайте! =)

  6. Дмитрий 05.05.2017 в 19:14- Ответить

    А почему у вас сейчас стоит не Memcached?

    • Янис Рокерский 06.05.2017 в 00:30- Ответить

      На данный момент мне удобнее другой кэш использовать.

Оставить комментарий