Обзор Speed Cache. Сравнение систем кэш Joomla
Speed Cache – расширение Joomla для увеличения скорости загрузки сайта, его оптимизации и снижения нагрузки на сервер. В предыдущей статье «Обзор Speed Cache. Снижение нагрузки Joomla на сервер» мы рассмотрели его возможности и настройки. В этой статье поговорим о его реальной эффективности, измеренной на основании шести независимых тестов и выясним, когда же он будет максимально полезен и эффективен.
Сравнение кэша Joomla 3 и Speed Cache
Общие условия.
- Тестируется главная страница сайта. Копия этой.
- Один и тот же сервер и сайт.
- Webpagetest.org. Местоположение тестового сервера – Варшава, Польша; Браузер – Chrome. Расширенные настройки – по умолчанию.
- Tools.pingdom.com. Местоположение тестового сервера – Стокгольм, Швеция. 4.21.5. Настройки обхода («паука») по умолчанию, но с игнорированием правил robots.txt. Первый проход длится 7 мин., второй – 3 мин. 30 сек. В первый проход программа впервые запрашивает URL страницы, и для них только генерируется кэш. А во второй проход программа запрашивает те же URL, но сайт отдаёт их уже из кэша. В таблице приведён результат количества обработанных URL за 3 мин. 30 сек. (и для 1-го и для 2-го обхода). Первый обход проводил дольше для уверенности, что при втором обходе все страницы будут получаться из кэша.
Тест без Speed Cache.
- Полностью отключил Speed Cache в Расширения – Менеджер расширений – Управление
- Включил стандартное кэширование Joomla. Обработчик кэширования – Файл. Специфическое кэширование для платформы – Нет.
- Очистил весь кэш, включая кэш в браузере.
- Обновляю тестовую страницу, чтобы создался кэш.
Тест со Speed Cache.
- Включил Speed Cache.
- По результатам проверки Speed Cache исправил все недочёты, кроме версии PHP. Её оставил той же, что и для кэша без Speed Cache – 5.6.30.
- Ничего не минимизировал. Настройки Speed Cache по умолчанию не менял.
- Не выключал стандартное кэширование Joomla.
- Очистил весь кэш, включая кэш в браузере.
- Обновляю тестовую страницу, чтобы создался кэш.
Для наглядности сведу результаты тестирования кэширования Joomla в таблицу.
«Критерий»
Без Speed Cache
Со Speed Cache
Какое количество проверенных сайтов медленнее тестируемого
Google PageSpeed Insights
Степень оптимизации для мобильных устройств
Степень оптимизации для компьютеров
Найдено страниц (1-й проход)
Вычитано ресурсов (1-й проход)
Найдено страниц (2-й проход)
Вычитано ресурсов (2-й проход)
Первая загрузка (полная)
Повторная загрузка (полная)
Запросов при первой загрузке (полная)
Запросов при повторной загрузке (полная)
Загружено данных с сервера при первой загрузке (полная)
Загружено данных с сервера при повторной загрузке (полная)
Время получения первого байта (First Byte Time (FBT))
Сжатие передаваемых данных
Кэширование статического контента
Эффект от использования сети доставки контента (CDN)
Полное время загрузки
Минимальное время получения страницы
Максимальное время получения страницы
Среднее время получения страницы
Итого, если взять конечные результаты, в моём тестировании Speed Cache позволил добиться таких показателей:
- По данным Tools.pingdom.com скорость загрузки сайта ухудшилась на 7,89%.
- По данным Webpagetest.org (первая загрузка) скорость загрузки сайта улучшилась на 9,33%.
- По данным Webpagetest.org (повторная загрузка) скорость загрузки сайта ухудшилась на 0,18%.
- По данным Gtmetrix.com (полное время загрузки) скорость загрузки сайта ухудшилась на 27,27%.
- По данным Loadimpact.com (минимальное время получения страницы) скорость загрузки сайта улучшилась на 34,94%.
- По данным Loadimpact.com (максимальное время получения страницы) скорость загрузки сайта улучшилась на 36,31%.
- По данным Loadimpact.com (среднее время получения страницы) скорость загрузки сайта улучшилась на 50,44%.
Улучшение – это значит время загрузки сайта со Speed Cache меньше, чем без него. То есть, скорость больше. Думаю, если разница с и без Speed Cache не более 3-5%, то этим можно пренебречь (списать на погрешность)
На рисунке ниже показан сводный график скорости загрузки страницы (в секундах) по разным сервисам. Чем показатель меньше, тем быстрее грузится сайт.
Выше полученные данные могут быть существенно искажены тем, что сайт находится на общем хостинге, загруженностью канала и другими факторами. Несмотря на это, всё же можно сделать некоторые выводы.
Так как кэш браузера Joomla и Gzip сжатие уже было настроено средствами сервера, то их активация в Speed Cache не дала никакого эффекта. То же самое можно сказать и про Expire Headers. Также я не производил минимизацию CSS и JS при помощи Speed Cache. А это могло бы повлиять на степень оптимизации и скорость загрузки. Неоднородность полученных результатов в рамках разных сервисов обуславливается разной методикой тестирования и подсчёта каждым конкретным сервисом. При очень маленькой посещаемости сайта (до 100 уникальных посетителей в сутки), возможно, нет особой выгоды в установке Speed Cache, если ориентироваться только на кэширование (не учитывая минимизацию). При более высокой посещаемости Speed Cache даёт ощутимый выигрыш – это особенно видно по данным тестирования сайта под нагрузкой (Loadimpact.com). Также это видно по тестам сканирования страниц сайта при помощи WebSite Auditor, так как при 2-м обходе, найдено на 19,03% страниц больше, а вычитанных ресурсов на 4,88% больше.
Касательно оценок общей степени оптимизации сайта с и без Speed Cache. Они, по большому счёту, не изменились. Это обусловлено тем, что тестируемый сайт уже был оптимизирован ранее и это делалось не при помощи Speed Cache. А то, на что мог повлиять Speed Cache (минимизация файлов), в тесте не производилось. В плане оценки степени оптимизации скорости загрузки сайта только Webpagetest.org показал улучшение со Speed Cache. Улучшение было по весьма важному показателю «Время получения первого байта (First Byte Time (FBT))». Оценка улучшилась с «B» на «A». Плюс, включения кэша Joomla 3 не достаточно, чтобы реализовать большинство рекомендаций по оптимизации скорости загрузки сайта. Для этого может пригодиться компонент JCH Optimize.
Ниже представлена более детальная информация по каждому из тестов.
Замер показателей оптимизации и скорости загрузки сайта при помощи сервиса Tools.pingdom.com со стандартным кэшем Joomla, без Speed Cache (рисунок ниже). Ссылка на результат.
Tools.pingdom.com со стандартным кэшем Joomla, без Speed Cache
Замер показателей оптимизации и скорости загрузки сайта при помощи сервиса Tools.pingdom.com со стандартным кэшем Joomla и Speed Cache (рисунок ниже). Ссылка на результат.
Tools.pingdom.com со стандартным кэшем Joomla и Speed Cache
Замер показателей оптимизации и скорости загрузки сайта при помощи сервиса Google PageSpeed Insights со стандартным кэшем Joomla, без Speed Cache (рисунки ниже).
Google PageSpeed Insights со стандартным кэшем Joomla, без Speed Cache Google PageSpeed Insights со стандартным кэшем Joomla, без Speed Cache (2)
Замер показателей оптимизации и скорости загрузки сайта при помощи сервиса Google PageSpeed Insights со стандартным кэшем Joomla и Speed Cache (рисунки ниже).
Google PageSpeed Insights со стандартным кэшем Joomla и Speed Cache Google PageSpeed Insights со стандартным кэшем Joomla и Speed Cache (2)
Замер показателей оптимизации и скорости загрузки сайта при помощи сервиса Webpagetest.org со стандартным кэшем Joomla, без Speed Cache (рисунки ниже).
Webpagetest.org со стандартным кэшем Joomla, без Speed Cache
Замер показателей оптимизации и скорости загрузки сайта при помощи сервиса Webpagetest.org со стандартным кэшем Joomla c Speed Cache (рисунки ниже).
Webpagetest.org со стандартным кэшем Joomla c Speed Cache
Замер показателей оптимизации и скорости загрузки сайта при помощи сервиса Gtmetrix.com со стандартным кэшем Joomla, без Speed Cache (рисунки ниже).
Gtmetrix.com со стандартным кэшем Joomla, без Speed Cache
Замер показателей оптимизации и скорости загрузки сайта при помощи сервиса Gtmetrix.com со стандартным кэшем Joomla и Speed Cache (рисунки ниже).
Gtmetrix.com со стандартным кэшем Joomla и Speed Cache
В конце статьи Вы найдёте PDF-файлы с отчётами теста Gtmetrix.com.
При помощи сервиса Loadimpact.com, со стандартным кэшем Joomla, без Speed Cache, был проведён тест скорости работы сайта под нагрузкой (рисунки ниже). Ссылка на результат.
Loadimpact.com, со стандартным кэшем Joomla, без Speed Cache
При помощи сервиса Loadimpact.com, со стандартным кэшем Joomla и Speed Cache, был проведён тест скорости работы сайта под нагрузкой (рисунки ниже). Ссылка на результат.
Loadimpact.com, со стандартным кэшем Joomla и Speed Cache
Google PageSpeed Insights
Предоставляя услуги по созданию сайтов на Joomla и по увеличению скорости загрузки сайтов на Joomla, очень часто слышу от заказчиков и SEO-специалистов, примерно, такие пожелания: «Увеличить скорость загрузки сайта не менее чем на 80 по Google PageSpeed Insights». Ниже изложу своё личное мнение на подобные пожелания. Далее под «скоростью загрузки сайта» будет пониматься скорость загрузки каждой конкретной страницы сайта.
Скорость загрузки сайта – это время в секундах (миллисекундах), которое прошло с момента отправки запроса на сервер сайта и до полной загрузки всего содержимого страницы, включая элементы с внешних сервисов (например, чаты, кнопки обратного звонка, кнопки соц. сетей). Немного подробнее об этом можно прочесть в данной статье. Это моё видение того, что такое полная (абсолютная) скорость загрузки страницы. К сожалению, при таком подходе очевидно, что веб-мастер не может повлиять на достаточно весомые факторы: загруженность канала между сервером сайта и браузером; браузер пользователя; скорость подключения пользователя к сети; скорость работы внешних сервисов и т.д.
Говоря о скорости загрузки сайта, счёт идёт на секунды. То есть, скорость в 2 секунды и в 5 секунд - это разная скорость. Рекомендую прочесть статью, чтобы примерно понимать, что значит «очень быстро», «быстро» и т.д. Как это выражается в секундах.
Степень оптимизации скорости загрузки сайта – соответствие сайта определённому набору рекомендаций. Может измеряться в баллах, процентах и условных обозначениях, например, «хорошо», «плохо». Или в качестве оценки могут быть графические иконки: звёздочки, зелёные галочки и т.д. Это моё видение того, что такое степень оптимизации.
Для меня есть разница между скоростью (в секундах) и оценкой (в процентах). И не только для меня. На 6-й конференции Яндекса «Вебмастерская» в докладе «Как мы ускоряли сайт и что из этого вышло» Денис Паращий, сотрудник Rambler&Co, на 22:50 минуте отвечает на вопрос касательно ориентирования на показатель оценки Google PageSpeed Insights. Посмотрите и послушайте его ответ. А лучше - весь доклад.
«PageSpeed Insights анализирует содержание веб-страницы и предлагает решения, которые позволят ускорить ее загрузку.» – это написано в правом нижнем углу главной страницы сервиса Google PageSpeed Insights. Наверное, SEO-специалисты и владельцы сайтов, которые просят: «Увеличить скорость загрузки сайта не менее чем на 80 по Google PageSpeed Insights», не видят или не так понимают эту надпись.
Если перейти по ссылке «Подробнее…», то можно прочесть: «Оценка PageSpeed может составлять от 0 до 100 баллов. Чем больше оценка – тем лучше. Если страница набрала более 85 баллов, значит она загружается быстро. … PageSpeed Insights определяет, как можно улучшить следующие показатели: … Так как скорость подключения у разных пользователей различна, PageSpeed Insights рассматривает только независимые от сети аспекты работы страницы: конфигурация сервера, структура HTML, использование внешних ресурсов (изображений, JavaScript и CSS). Применив наши рекомендации, вы сможете оптимизировать относительную скорость загрузки страницы. Абсолютная же скорость загрузки в конечном итоге все равно зависит от скорости подключения к сети.».
Основываясь на этом и на непонимании того, что значит: «Скорость загрузки сайта 72/100», считаю, что Google PageSpeed Insights не показывает время загрузки сайта и нельзя на основании оценки этого сервиса судить о реальной скорости загрузки сайта.
Но там же по ссылке «Подробнее…» есть фраза: «Page Speed Insights измеряет скорость загрузки веб-страниц.». В английской версии справки (переключитесь на английский язык в спадающем списке внизу слева) она звучит: «Page Speed Insights measures the performance of a page for mobile devices and desktop devices.». «Speed» – скорость, «performance» – производительность, эффективность. Для меня есть разница между «скорость» и «производительность», «эффективность».
Многократно сталкивался с ситуациями, когда степень оптимизации и скорость противоречили друг другу. Например, есть два сайта «http://aleksius.com/» и «http://moroz.hol.es/». Протестируем каждый из них в Page Speed Insights (тесты на 05.04.2017 20:50). Оба на Joomla 3.6 и над обоими я работал в плане оптимизации скорости загрузки (кэш Joomla 3, кэш браузера, сжатие изображений и т.д.). В статье «Обзор Хостингер. Бесплатный хостинг для Joomla» приведён пример сравнения скорости загрузки сайта «http://moroz.hol.es/» и степени его оптимизации на платном и бесплатном тарифе одного и того же хостинга.
Google PageSpeed Insights Google PageSpeed Insights (2) Page Speed Moroz.hol.es Page Speed Moroz.hol.es (2)
Как видите, «http://aleksius.com/», немного, но проигрывает «http://moroz.hol.es/» по степени оптимизации.
- «http://aleksius.com/» – 72/100 и 88/100.
- «http://moroz.hol.es/» – 77/100 и 90/100.
А теперь протестируем каждый из них в Pingdom Website Speed Test.
Pingdom Website Speed Test (Aleksius.com) Pingdom Website Speed Test (Moroz.hol.es)
И опять «http://aleksius.com/» проигрывает «http://moroz.hol.es/» по степени оптимизации.
- «http://aleksius.com/» – 76/100.
- «http://moroz.hol.es/» – 90/100.
Но посмотрите на разницу в секундах.
- «http://aleksius.com/» – 1,29 секунды.
- «http://moroz.hol.es/» – 3,37 секунды.
Не верите, сами протестируйте или походите по обоим сайтам. Не нужно быть специалистом, просто походите по сайтам и вы «увидите» разницу по скорости.
То есть, более оптимизированный сайт грузится на 161% дольше (2,08 секунды), чем менее оптимизированный. Как менее оптимизированный сайт может грузиться быстрее, да ещё и настолько, чем более оптимизированный? Сайт «http://aleksius.com/» размещён на качественном, платном хостинге: SSD диск, Zend OPcache (ранее назывался "Zend Optimizer+"), PHP memory_limit (256 Мб), 60 Gbit/s суммарная пропускная способность канала: 10 Gbit/s включение в UA-IX, 10Gbit/s - DATA-IX, 10Gbit/s - Gigatrans, 10Gbit/s - Dtel-IX, 2x10Gbit/s зарубежный канал и ещё много факторов, зависящих от хостинга. А сайт «http://moroz.hol.es/» расположен на абсолютно бесплатном хостинге. Как видите, степень оптимизации (оценка Google Page Speed Insights) и реальная скорость загрузки сайта (в секундах) - это далеко не одно и то же.
Я бы рекомендовал SEO-специалистам и владельцам сайтов измерять скорость загрузки не в баллах Google Page Speed Insights, а в секундах. Для этих целей можно использовать разные сервисы. Некоторые из них приведены выше в статье. Но к выбору сервиса (сервисов) для тестирования и их настройки нужно подойти внимательно. Также нужно с пониманием подойти к полученным данным и договориться с тем, кто будет выполнять работы по оптимизации, на что лучше ориентироваться.
Например, ко мне обратился SEO-специалист с задачей уменьшить скорость загрузки главной страницы сайта интернет-магазина до 0,5-1 секунды. Зная, что на главной странице сайта Viator-tec.com много картинок товаров, разные модули, логотип, форма поиска, корзина и ещё много чего, я ответил, что не смогу это сделать, да и в принципе, может не получиться. На тот момент я не поинтересовался, что он подразумевает под скоростью и при помощи чего он её измеряет. Я мерял теми же сервисами, что и в статье выше, под скоростью загрузки понимал то же, что описал Вам выше в статье. SEO-специалист привёл мне в пример «http://rozetka.com.ua/». Я проверил скорость загрузки сайта. Быстро (1,7-2 секунды), но не 0,5-1 секунды. Вот тогда я начал выяснять, при помощи чего он меряет скорость. Оказалось, это сервис «a.pr-cy.ru». И показатель, на который он ориентируется, называется «Скорость загрузки HTML». Я сделал попытку пояснить, что это не совсем корректный показатель, особенно для интернет-магазина, где изображения товара – очень важный элемент страницы. И без их загрузки страница бесполезна. Плюс, «Скорость загрузки HTML» - это даже не «Время получения первого байта (First Byte Time (FBT))», который по распространённому среди SEO-специалистов мнению, влияет на ранжирование. А значит, надо измерять не так. Но моих доводов не хватило для переубеждения SEO-специалиста. В результате оптимизации мне удалось добиться «скорости загрузки» в 0,71 секунду.
Достаточно часто бывает так, что добиться более хорошей оценки Google Page Speed Insights легче, чем добиться короткого времени загрузки страницы в секундах.
Несмотря на всё вышеизложенное, считаю, что рекомендации, которые даёт Google Page Speed Insights нужно пробовать применить. Пробовать и смотреть на результат в секундах. Пробовать с учётом рентабельности внедрения этих рекомендаций на сайт.
В следующей статье «Оптимизация Joomla по рекомендациям Page Speed Insights» поделюсь собственным опытом ускорения сайтов на Джумла по рекомендациям Google. Покажу, при помощи каких инструментов можно реализовать ту или иную рекомендацию, и расскажу, с какими проблемами можно столкнуться при их выполнении.
Автор статьи – Хорошевский АлексейПримерно с 2008 года и по сегодняшний день создаю сайты «под ключ» на Joomla и WebSite X5. Также занимаюсь их доработкой, SEO-продвижением, контекстной рекламой, защитой от взлома и оптимизацией скорости загрузки сайта.
Кандидат технических наук по специальности «Информационные технологии».
На этом сайте есть контакты и информация обо мне. На нём Вы найдёте примеры моих работ, а также перечень и цены предоставляемых услуг.