Ответ 1
Ваше сообщение заинтересовало меня, поэтому я играл с mod_pagespeed, я не делал никаких подробных тестов и измерений. Мое общее впечатление было равнодушием, выгоды были незначительными, чтобы не обнаружить. Наибольшее препятствие для Magento всегда было и остается массой классов PHP, которые требуют времени для загрузки и создания экземпляров. Magento на самом деле не виноват в плохих практиках, таких как встроенный CSS, поэтому для этого мода мало возможностей. С этими оговорками в стороне здесь мой опыт.
Во-первых, у Google очень хорошо упакованы mod_pagespeed, они предоставляют источник, а также двоичные файлы, но установщик двоичных файлов регистрирует репозитории, поэтому он будет обновляться. Что-то, чего я желаю, чтобы продюсеры делали, как само собой разумеющееся. Наиболее разумные настройки по умолчанию, поэтому он работает сразу без каких-либо настроек.
Фильтры
Конфигурация разбита на умеренный список filters, который вы должны прочитать, чтобы точно увидеть, какие улучшения сделаны. Я выбрал только два варианта - "remove_comments" и "collapse_whitespace", которые сделали заметную разницу в размере HTML и ничего не сломали.
extend_cache
- По умолчанию. Мне нравится концепция и думаю, что это отличный способ поддерживать версии файлов. Полезно.
outline_css
и outline_javascript
- Включить по умолчанию. Не очень актуально. Безопасно.
combine_css
и rewrite_css
- по существу то же самое, что встроенная функция Magento и несколько расширений, включая всегда приветствуемый Fooman Speedster. Вы можете подумать, что это делает его избыточным, но мне он нравится, поскольку он выгружает выполнение PHP в собственный код, благодаря блочному кэшированию разница может быть незначительной, но для меня это достаточно. Полезно.
inline_css
и inline_javascript
- Дополнение к outline_css
и outline_javascript
и по умолчанию. Увеличивает размер страницы, чего я не ожидал. Предположительно уменьшить количество запросов, но что делать, если файлы css/js объединяются? Я ожидаю, что это просто удаление содержимого из кэшируемого источника. Не требуется.
collapse_whitespace
и remove_comments
- Отключить по умолчанию, но стоит продолжить. Делает измеримую разницу между передаваемыми байтами даже после сжатия. Полезно.
combine_heads
- Устраняет проблему, которая, вероятно, никогда не возникнет в этом контексте. Безопасно.
elide_atttributes
- Я не нашел никаких проблем с этим, но только время покажет, на данный момент я буду считать это безобидным. Полезно.
rewrite_javascript
- Это в основном "jsmin", а собственные комментарии Google предупреждают об этом как опасные. Поскольку js minifier, который поставляется вместе с Magento, как в бета-версии, так и в моих проблемах, в прошлом я рассматривал этот совет мудреца и оставил его в покое. Не требуется.
rewrite_images
- Я оставлю этот короткий. ПОЛЕЗНЫЕ.
insert_img_dimensions
- Что-то еще у Magento действительно не проблема, поэтому на самом деле не нужно исправлять. Но это безвредно и может помочь страницам сделать более гладко. Полезно.
ModPagespeedImgInlineMaxBytes
- превращает небольшие изображения в данные: uri content. Я не доверяю этому, потому что есть сложная проверка версии UA, и вы не можете быть уверены, что прокси-серверы вне вашего контроля не будут работать с неправильными браузерами. Google, похоже, думает, что это "низкий или умеренный" риск, но я не дам ему этого шанса. Не требуется.
remove_quotes
- Прерывает проверку w3c для усиления нескольких байтов. Теоретически это должно быть безвредным, но я не верю в это. Не требуется.
move_css_to_head
и add_head
- Может расстроить некоторый javascript, но Magento более вынослив, чем это, тогда снова Magento обычно не делает ошибок школьного мальчика, подобных этому, которые нуждаются в исправлении. Безопасно.
Заключение
Различные перезаписи, переупорядочивания и исправления мешают развитию. Номер строки, указанный браузером, не обязательно будет одинаковым в вашем исходном коде. По этой причине я бы никогда не использовал его ни для чего, кроме производственного сервера.
Преимущество настолько мало для приложения с поддержкой PHP, такого как Magento. Сколько из нас будет управлять серверами с миллионами ежедневных посетителей, чтобы заметить экономию средств? Я знаю, что я могу получить гораздо большую экономию от старомодного программирования. Блокировка и полное кэширование страниц имеют лучший эффект.
Тем не менее, любое улучшение приветствуется, поэтому я буду рассматривать его в будущем. Любые другие сайты, размещенные на том же сервере, будут полезны по-своему. Точная конфигурация будет оцениваться в каждом конкретном случае, но, как правило, я думаю, что буду делать следующее:
-
В доступных модах /pagespeed.conf:
ModPagespeedDisableFilters inline_css, inline_javascript, rewrite_javascript, remove_quotes ModPagespeedEnableFilters collapse_whitespace, remove_comments
- Установите Fooman Speedster, чтобы правильно комбинировать javascript.
- Предупреждать клиента/плательщика бета-версии мод.