Что делает mod_pagespeed? - PullRequest
       17

Что делает mod_pagespeed?

10 голосов
/ 03 февраля 2011

Это со ссылкой на:

http://googlecode.blogspot.com/2011/01/go-daddy-makes-web-faster-by-enabling.html

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

Еще одна вещь, которую я НЕ мог понять, почему «Кэшируемые последующие запросы работают медленно»?

enter image description here

Ответы [ 2 ]

22 голосов
/ 03 февраля 2011

PageSpeed ​​mod_pagespeed - это модуль для сервера Apache, похожий на плагин, и, поскольку Apache отличается от IIS, его нельзя установить на серверах IIS.

Что касается того, что он делает, он делает несколько вещей:

  • Сокращает (удаляет пробелы, комментарии и т. Д.) Или, другими словами, сжимает внешние CSS и JavaScript
  • В дополнение к минимизации JS, он объединяет несколько внешних файлов JS в один файл JS, что вызывает меньше запросов http или циклических переходов, поэтому страница загружается быстрее
  • Оптимизирует кеш для файлов. Каждый заголовок http имеет информацию о кеше, или, другими словами, как долго браузер должен хранить ресурс, mod_pagespeed оптимизирует это число
  • Использует идею снятия отпечатков URL для новых файлов JS. В основном, когда mod_pagespeed оптимизирует и объединяет несколько файлов JS в один файл, этот временный файл сохраняется где-то на сервере, однако его имя файла генерируется из содержимого файлов JS с использованием алгоритмов контрольной суммы, таких как MD5. Это позволяет сделать то, что mod_pagespeed сообщает браузеру хранить файл JS в течение длительного времени (устанавливает длительное время кэширования), однако, как только разработчик изменит содержимое даже в одном из файлов JS, поскольку контрольная сумма из всех файлов изменится, mod_pagespeed создаст новый временный JS-файл, который будет иметь другой URL-адрес по сравнению со старым. Таким образом, когда пользователь, который сохранил старый объединенный файл JS, попытается перезагрузить страницу, так как URL нового файла JS будет новым, это заставит браузер загрузить его снова. По сути, это один из способов управления кэшем.
  • Сокращает HTML

Так что этот модуль довольно крутой. Это действительно может ускорить работу сайтов. Однако недостатком является то, что он использует гораздо больше ресурсов процессора на серверах.

Надеюсь, это поможет.

1 голос
/ 24 марта 2015

Согласно вашему графику, левая картинка не отображает время загрузки кэшированных запросов. Это количество запросов! И, как и должно быть, количество запросов к серверу уменьшается, а количество кэшируемых запросов уменьшается.

Однако я не вижу изменения времени загрузки. Согласно недавнему исследованию «Что такое PageSpeed ​​Module?» , время загрузки может быть уменьшено до 90%!

Кроме того, их числа на числах, которые я получаю из Ваших фотографий, совпадают довольно точно: - сокращение количества запросов примерно на 50%; - примерно на 80% меньше полезной нагрузки.

Идея о том, как это работает, описана джентльменом в ответе выше, для получения дополнительной информации вы можете проверить Документация Google или ссылку на Boost Business Friday Ребята.

...