Расширения

Обзор Speed Cache. Снижение нагрузки Joomla на сервер

 

 

Speed Cache – расширение Joomla, предназначенное для уменьшения нагрузки на сервер и увеличения скорости загрузки сайта. При тестировании сайта в Google PageSpeed Insights позволяет выполнить рекомендацию «Сократите время ответа сервера» (зависит от сайта и сервера). Также влияет на TTFB (time to first byte – время до первого байта). Есть мнение, что TTFB – это фактор ранжирования, а скорость загрузки сайта – это точно фактор ранжирования, так как об этом заявляли представители Google.

Speed Cache позволяет улучшить показатели сайта по результатам теста Google PageSpeed Insights по таким рекомендациям:

  1. «Сократите время ответа сервера».
  2. «Используйте кеш браузера».
  3. «Сократите JavaScript».
  4. «Сократите CSS».
  5. «Включите сжатие».

Степень улучшения зависит от сайта и сервера.

Speed Cache организует несколько «видов\уровней» кэширования Joomla: серверное кэширование и кэширование на клиенте. В совокупности это может существенно увеличить скорость загрузки сайта, снизить нагрузку на хостинг (сервер) и сэкономить деньги, если Вы платите за CDN (сеть доставки контента) и\или трафик на хостинге.

Помимо этого Speed Cache позволяет автоматически очистить кэш, минимизировать файлы (CSS, JS и шрифты) и «провести небольшой тест» вашего сайта с выводом кратких рекомендаций по его улучшению в плане скорости\нагрузки.

В моём блоге можно найти несколько статей, в которых рассматриваются разные расширения, помогающие увеличить скорости и снизить нагрузку на сервер. Также в этих статьях затронуты теоретические вопросы: что такое «скорость»; при помощи каких инструментов её можно измерять; какая скорость является приемлемой и другие.

  1. «Обзор JCH Optimize Pro. Увеличение скорости загрузки Joomla».
  2. «Обзор JCH Optimize Joomla. Ускорение сайта».
  3. «Обзор JSpeed (часть 1). Оптимизация скорости загрузки Joomla».
  4. «Скорость загрузки сайта Joomla».
  5. «Обзор JotCache. Кэширование Joomla 3».
  6. «Обзор JotCache. Кэш браузера Joomla».
  7. «Обзор JAmp. AMP для Joomla страниц».
  8. «Обзор JAmp. AMP-страницы в Joomla 3».
  9. «WEBO Site SpeedUp. Ускорение сайта Aleksius.com».

В обзоре будет участвовать последняя, на момент написания статьи (01.04.2017), русскоязычная версия Speed Cache 2.0.2 в Joomla 3.6.5. Основной шаблон сайта – JM Job Listings 1.0.2 (с изменённой таблицей стилей). По сути, тестируется копия сайта Aleksius.com на том же хостинг-аккаунте (общий хостинг).

На официальном сайте расширений Joomla 6 отзывов (на 02.04.2017), расширение добавлено 01.07.2016.

  • Общий рейтинг – 98 из 100.
  • Функциональность – 98 из 100.
  • Простота использования – 98 из 100.
  • Документация – 98 из 100.
  • Поддержка – 98 из 100.
  • Соотношение цена\качество – 98 из 100.

Расширение платное, на данный момент от $29.

Особенности Speed Cache

Перечислю основные, по моему мнению, особенности компонента кэша Joomla 3. Немного терминов: «гость» – посетитель сайта, который не ввёл свои учётные данные в форму входа на сайт и не вошёл как зарегистрированный пользователь; «зарегистрированный пользователь» – посетитель сайта, который ввёл свои учётные данные в форму входа на сайт и вошёл как зарегистрированный пользователь.

Кэширование.

  • Серверное кэширование. Более «глубокое», чем стандартное кэширование Joomla. За счёт этого сокращается количество обращений к базе данных. Можно указать срок кэширования.
  • Кэширование на клиенте (в браузере). Возможность хранения «тяжёлых» элементов страниц в браузере посетителя, таких как, например, изображения. За счёт этого можно добиться увеличения скорости полной загрузки страницы (при её повторном посещении) и снизить нагрузку на пропускной канал сервера (уменьшить трафик).
  • Система предварительной загрузки кэша (автоматическая генерация кэша). Возможность разделения правил предзагрузки для гостей и зарегистрированных пользователей. Предзагрузка позволяет автоматически генерировать кэш страниц до того, как страница будет запрошена во фронтальной части сайта каким-то посетителем. Если не использовать предзагрузку, то кэш страниц будет создаваться при первом запросе этой страницы. То есть, первому, кто запросит страницу с сервера, она будет отдаваться с обычной скоростью (так, как будто кэша и нет вовсе), а в последующие разы страница будет отдаваться из кэша с большей скоростью и меньшей нагрузкой на сервер.

Настройки кэша.

  • Поддержка кэша с учётом сессий пользователей. Возможность разделения правил кэширования для зарегистрированных пользователей и гостей. То есть, например, включить кэширование для гостей и отключить для зарегистрированных пользователей.
  • Возможность создания правил включения\исключения страниц из кэша на основании URL-адресов. В правилах можно использовать регулярные выражения. Есть возможность указать меню Joomla, на основании которых будет построен список URL-адресов для кэширования.
  • Есть возможность настройки некоторых параметров кэширования для всех URL вместе или для каждого по отдельности.
  • Автоматическое добавление новых URL-адресов в кэш (на основании правил). Также кэширование выполняется при посещении страницы пользователем во фронтальной части сайта.
  • Автоматическая или «ручная» очистка кэша Joomla, кэша Speed Cache и кэша браузера при определённых действиях (публикация, сохранение, снятие с публикации и удаление материала) администратора сайта или модератора из админки или фронтальной части сайта. Кнопка «ручной» очистки кэша доступна на всех страницах административной части сайта. Есть возможность разделить очистку кэша Joomla и кэша Speed Cache.
  • Автоматическое перекэширование после очистки кэша. То есть, если контент страницы был изменён, например, отредактирован материал, то кэш этой страницы будет автоматически очищен и создан заново.

Другие способы оптимизации скорости загрузки сайта.

  • Минимизация файлов (CSS, JS и шрифтов). Можно включить\отключить минимизацию для каждого файла отдельно. Есть возможность выбора, в каких папках сайта нужно искать файлы для минимизации.
  • Возможность интеграции с компонентом сжатия изображений и PDF ImageRecycle.
  • Проверка сайта и вывод рекомендаций по его ускорению и снижению нагрузки на сервер: активация кэша, время кэширования, активация Gzip сжатия, версия PHP, кэширование в браузере, Expire Headers и другие «моменты».

Разное.

  • Совместимость с родной системой кэша Joomla 3.
  • Минимизация рисков нарушения работы сайта, связанных с кэшированием динамических элементов страниц. Например, форм.
  • Совместимость с системами кэширования на сервере, например, PageSpeed.
  • Наличие режима отладки для упрощения выявления конфликтов.
  • Поддержка разграничения прав доступа к компоненту на основании групп пользователей Joomla (ACL).
  • Поддержка Joomla 3.х.
  • Переведён на русский, английский и французский языки. Включая всплывающие подсказки к опциям и рекомендации по ускорению сайта. Есть возможность изменения перевода прямо в интерфейсе компонента.
  • Использование встроенной в Joomla системы обновления.
  • Компонент основывается на фреймворке Joomla, что делает его более лёгким и максимизирует вероятность совместимости с любыми сторонними расширениями, например, K2, FlexiContent, ZOO и т.д..
  • Наличие документации и технической поддержки (на английском языке).

Инструменты

На главной странице Speed Cache (рисунок ниже) Вы сразу увидите некий «отчёт» с рекомендациями по ускорению Вашего сайта.

Speed Cache
Speed Cache

Какие-то рекомендации, например, касательно «Время кэширования Joomla» можно будет выполнить достаточно легко, быстро и безболезненно. А выполнение рекомендации касательно «Версии PHP» может быть весьма затруднительной задачей: у Вас на хостинге может не быть этой версии или переход на неё потребует дополнительных затрат; не все используемые Вами расширения Joomla могут корректно работать с PHP 7 и т.д.

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

Управление страницами кэша. Если Вы только что установили Speed Cache, перейдите в раздел Управление страницами кэша (рисунок ниже) и импортируйте URL из меню (Вы сможете выбирать, из каких меню нужно добавлять адреса). Так Вы добавите первую часть URL, которые нужно кэшировать. В дальнейшем это можно будет изменить. Естественно, если какая-то страница не попала в этот перечень, она будет закэширована при её посещении из фронтальной части сайта.

Кэш Joomla 3
Кэш Joomla 3

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

Настройки кэша
Настройки кэша

Все настройки оснащены всплывающими подсказками на русском языке. Напомню, что:

  • «Гость» – посетитель сайта, который не ввёл свои учётные данные в форму входа на сайт и не вошёл как зарегистрированный пользователь.
  • «Зарегистрированный пользователь» – посетитель сайта, который ввёл свои учётные данные в форму входа на сайт, и вошёл как зарегистрированный пользователь.
  • «Предзагрузка» – автоматическая генерация кэша URL до того, как он будет запрошен\посещён посетителем из фронтальной части сайта.
  • «Кэширование» – автоматическая генерация кэша URL при добавлении этого URL в список кэшируемых или при изменении его содержимого (из фронтальной части сайта или из админки).

В разделе Управление страницами кэша есть 4 вкладки.

  1. Включение URL кэширования. Позволяет добавлять конкретные URL-адреса вручную (рисунок ниже) или на основании меню, которые нужно кэшировать.
  2. Правила включения кэширования URL. Позволяет добавлять URL-адреса, которые нужно кэшировать, на основании правил с использованием регулярных выражений (рисунок ниже).
  3. Исключения URL кэширования. Позволяет добавлять конкретные URL-адреса вручную (рисунок ниже) или на основании меню, которые не нужно кэшировать.
  4. Правила исключения кэширования URL. Позволяет добавлять URL-адреса, которые не нужно кэшировать, на основании правил с использованием регулярных выражений (рисунок ниже).
Нагрузка Joomla
Нагрузка Joomla

Минимизация файла. Тут Вы сможете выбрать JavaScript, CSS и файлы шрифтов, которые нужно минимизировать. Минимизация – это процесс удаления лишних символов (например, пробелов и комментариев) из файлов. Это поможет улучшить показатели сайта по результатам теста Google PageSpeed Insights по таким рекомендациям как:

  1. «Сократите JavaScript».
  2. «Сократите CSS».

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

Минимизация файла
Минимизация файла

Вы можете включить\отключить минимизацию для отдельных файлов. Более того, в настройках Speed Cache, на вкладке Минимизировать Вы сможете выбрать папки своего сайта, в которых Speed Cache будет искать файлы JavaScript, CSS и файлы шрифтов, которые в последствии можно минимизировать.

Настройка

Настройки кэш Joomla 3 (рисунок ниже) разделены на 7 вкладок.

  1. Параметры.
  2. Минимизировать. Тут Вы сможете выбрать папки своего сайта, в которых Speed Cache будет искать файлы JavaScript, CSS и файлы шрифтов, которые в последствии можно минимизировать.
  3. Обработка изображений. Тут Вы сможете подключить компонент сжатия изображений и PDF ImageRecycle.
  4. Значения по умолчанию.
  5. Обновление. Тут можно настроить автоматическое обновление самого компонента Speed Cache.
  6. Тут Вы сможете изменить перевод интерфейса Speed Cache.
  7. Права. Это стандартная для Joomla вкладка, где можно настроить права доступа разных групп пользователей к Speed Cache.

Вкладка Параметры (рисунок ниже). Содержит «глобальные» настройки компонента. Все опции оснащены подробными всплывающими подсказками на русском языке. Тут, например, можно включить кэширование контента в браузере пользователя, что может сильно ускорить повторную загрузку страниц сайта и снизить нагрузку на сервер (опция Использовать кэш в браузере).

Кэш браузера Joomla
Кэш браузера Joomla

При помощи опции Токен для Предзагрузки кэша можно сгенерировать «защищённый\уникальный» URL для активации предзагрузки кэша. Этот URL можно использовать в планировщике (CRON) для автоматизации данного процесса.

Опция Добавить заголовок Кэш-Провайдер будет полезна при отладке сайта (поиска ошибок), связанной с нарушением его работы из-за кэширования.

Вкладка Значения по умолчанию (рисунок ниже). Тут Вы сможете задать настройки, с которыми, по умолчанию, будут создаваться URL в разделе Управление страницами кэша.

Значения по умолчанию
Значения по умолчанию

В следующей статье «Обзор Speed Cache. Сравнение систем кэш Joomla» будет приведён сравнительный анализ родного кэша Joomla и Speed Cache. Также я поделюсь своим толкованием понятий «скорость загрузки сайта» и «степень оптимизации скорости загрузки сайта». На конкретном примере и с пояснениями покажу, как более оптимизированный, по оценке Google PageSpeed Insights, сайт может грузиться гораздо медленнее, чем менее оптимизированный сайт.

Похожие материалы
Автор статьи – Хорошевский Алексей

Хорошевский Алексей Примерно с 2008 года и по сегодняшний день создаю сайты «под ключ» на Joomla и WebSite X5. Также занимаюсь их доработкой, SEO-продвижением, контекстной рекламой, защитой от взлома и оптимизацией скорости загрузки сайта.

Кандидат технических наук по специальности «Информационные технологии».

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

 

Полезные ссылки: