[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Оптимизация загрузки страницы
ЗлОй ПрОграММер
Пишу систему которая строится на подключаемых модулях (меню, формы, ну и так далее) у каждого модуля есть свои файлы стилей и javascript файл.
Эти модули подключаются в шаблоне страницы, а их стили и скрипты добавляются в теги <head></head> после полной загрузки страницы. Дабы снизить количество файлов стилей для оптимизации загрузки я динамически подключаю в общий css файлы стилей модуля командой import.
Хотелось бы узнать ваше мнение по данному подходу?
Меня смущает пока 2 момента:
1. Чтобы узнать какие стили модулей подгружать, нужно дождаться полной загрузки (включить буферизацию вывода) страницы, а уже потом добавлять их в общий файл стилей.
2. В некоторых статьях считают, что использовать import не есть хорошо! ибо он плохо влияет на скорость загрузки страницы.
volter9
@import загружает стили по HTTP, т.е. еще один запрос.
А JS файлы лучше в конце body класть что бы не задерживал загрузку страницы.

А вообще лучше сжимать и соеденять JS и CSS в один файл, типа как скрипты автоматизация grunt'а, а точнее grunt-contrib-uglify.

Что я предлогаю да к это для каждого шаблона генерировать свои два файла с сжатым JS и CSS. Единственная проблема которая может возникнуть да к это пути к каритинкам в CSS, хотя это легко через указание абсолютного пути к картинки.

_____________
Мой блог
ЗлОй ПрОграММер
Вот и я сначала стили через include добавлял, как с относительными путями возникли проблемы, стал import использовать. А буферизация вывода замедлит работу?
volter9
Цитата (ЗлОй ПрОграММер @ 23.12.2014 - 20:02)
Вот и я сначала стили через include добавлял, как с относительными путями возникли проблемы, стал import использовать. А буферизация вывода замедлит работу?

В зависимости это того что Вы имеете в виду про "замедлит работу". Буферизация вывода собирает и посылает весь вывод одним разом, или же тогда когда Вам это надо. Один из плюсов буферизации вывода это предотвращение проблем с установлением HTTP заголовков, т.к. вывод будет послан после выполнения скрипта (или же тогда когда Вы сами его вызовите) то проблем с установкой HTTP заголовков не будет.

http://stackoverflow.com/questions/1556613...-bad-idea-is-it

Тут пишут что особого удара по производительности нету, и некоторые даже пишут что буферизация вывода даже улучшит производительность. Так что тут решать Вам. Лично я, часто использую буферизацию вывода.

_____________
Мой блог
ЗлОй ПрОграММер
volter9
Я проверил скорость загрузки с буферизацией и без, не изменилась. Но это при условии что я никаких действий не производил. На одном сайте я удалял символы переноса строки и табуляции для уменьшения веса страницы с помощью preg_replace. недавно проверил скорость загрузки страницы, так выяснилось что она в 10 раз медленнее загружается.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.