ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: nginx + minify



У нас написан метод который выбирает из конфига приложения список CSS/JS файлов которые нужно склеить, есть разделение на глобальные файлы и по разделам сайта.
Метод вырезает комментарии, лишние пробелы и т.д., потом складывает все полученное в 1 файл css/js, делает gzip и после этого складывает в необходимое место, которое заранее определено и на страницах подключаются уже готовые сжатые стили/скрипты в зависимости от того на какой странице находится пользователь.

По поводу выигрыша - сейчас уже точно не помню цифр, но было существенное ускорение загрузки и отрисовки страниц.
Есть сервисы типа  http://tools.pingdom.com либо плагины к браузерам Page Speed, Firebug, .... с помощью которых Вы сможете увидеть эффект для конкретно вашего случая.

2011/9/2 Илья Шипицин <chipitsine@xxxxxxxxx>
по идее keep-alive дает аналогичный эффект, что и склеивание файлов
(ну, оверхед на http-заголовках чуть выше), keep-alive браузерами
поддерживается из коробки.
а добиться высокой скорости отображения - на отдельных файлах проще
(по мере загрузки), чем одним большим файлом.

расскажите, как вы количественно оценивали выгоду от склейки файлов ?
и как вы делаете minify ? из Makefile-а чем-нибудь типа Microsoft Ajax
Minifier или из PHP на лету ?


1 сентября 2011 г. 1:35 пользователь Alexander Moskalenko
<alexander.moskalenko@xxxxxxxxx> написал:
> Даже не обязательно так, у нас написан специальный метод, который вызывается
> руками после изменений в CSS/JS.
> Метод генерит все необходимое, в том числе .gz
>
> 2011/8/31 Igor Sysoev <igor@xxxxxxxxx>
>>
>> On Wed, Aug 31, 2011 at 08:09:22PM +0300, Gena Makhomed wrote:
>> > On 31.08.2011 16:47, Igor Sysoev wrote:
>> >
>> > >> Чтобы склеивать эти все файлы вместе и
>> > >> передавать как один, запускается PHP script.
>> > >> Он создаёт соответствующий склеенный
>> > >> файл и в следующий раз читает его уже с
>> > >> диска.   Работает это значительно
>> > >> быстрее чем если загружать все четыре
>> > >> CSS файла по отдельности через<link href...>
>> > >> для каждого.
>> >
>> > скорее всего, это http://code.google.com/p/minify/
>> > или что-то подобное.
>> >
>> > > Да, но какова цена этой склейки.
>> > > Почему бы не склеить их в статический файл для nginx'а,
>> > > да ещё и сделать .gz вариант ?
>> >
>> > таким образом будет проще настраивать, если для разных
>> > страниц надо подключать разные наборы стилей/скриптов.
>> >
>> > когда можно сделать 1 файл style.css/style.css.gz
>> > и 1 файл script.js/script.js.gz - тогда все просто,
>> > в момент выкладывания новой версии сайта на сервер
>> > скриптом просто заново перестраиваются эти 4 файла.
>> >
>> > а когда таких комбинаций файлов css/js десятки и сотни,
>> > то появляется большое количество ручной работы, которую
>> > не совсем понятно как можно автоматизировать без глюков.
>>
>> Зачем руками ? Есть Makefile.
>>
>> Например, nginx.org (не самый большой сайт, конечно) транслируется из XML
>> в HTML с помощью xsltproc. Потом rsync'ается в каталог, где для файлов
>> делается .gz, а потом это снова rsync'ается в каталог веб-сервера. Всё,
>> что нужно сделать после изменений (как в XML, так и в XSLT), это
>>
>>    make all gzip copy
>>
>>
>> --
>> Игорь Сысоев
>> http://sysoev.ru
>>
>> _______________________________________________
>> nginx-ru mailing list
>> nginx-ru@xxxxxxxxx
>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@xxxxxxxxx
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
>
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.