У нас написан метод который выбирает из конфига приложения список CSS/JS файлов которые нужно склеить, есть разделение на глобальные файлы и по разделам сайта.<div>Метод вырезает комментарии, лишние пробелы и т.д., потом складывает все полученное в 1 файл css/js, делает gzip и после этого складывает в необходимое место, которое заранее определено и на страницах подключаются уже готовые сжатые стили/скрипты в зависимости от того на какой странице находится пользователь.</div>
<div><br></div><div>По поводу выигрыша - сейчас уже точно не помню цифр, но было существенное ускорение загрузки и отрисовки страниц.</div><div>Есть сервисы типа  <a href="http://tools.pingdom.com">http://tools.pingdom.com</a> либо плагины к браузерам Page Speed, Firebug, .... с помощью которых Вы сможете увидеть эффект для конкретно вашего случая.<br>
<br><div class="gmail_quote">2011/9/2 Илья Шипицин <span dir="ltr"><<a href="mailto:chipitsine@gmail.com">chipitsine@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
по идее keep-alive дает аналогичный эффект, что и склеивание файлов<br>
(ну, оверхед на http-заголовках чуть выше), keep-alive браузерами<br>
поддерживается из коробки.<br>
а добиться высокой скорости отображения - на отдельных файлах проще<br>
(по мере загрузки), чем одним большим файлом.<br>
<br>
расскажите, как вы количественно оценивали выгоду от склейки файлов ?<br>
и как вы делаете minify ? из Makefile-а чем-нибудь типа Microsoft Ajax<br>
Minifier или из PHP на лету ?<br>
<br>
<br>
1 сентября 2011 г. 1:35 пользователь Alexander Moskalenko<br>
<<a href="mailto:alexander.moskalenko@gmail.com">alexander.moskalenko@gmail.com</a>> написал:<br>
<div><div></div><div class="h5">> Даже не обязательно так, у нас написан специальный метод, который вызывается<br>
> руками после изменений в CSS/JS.<br>
> Метод генерит все необходимое, в том числе .gz<br>
><br>
> 2011/8/31 Igor Sysoev <<a href="mailto:igor@sysoev.ru">igor@sysoev.ru</a>><br>
>><br>
>> On Wed, Aug 31, 2011 at 08:09:22PM +0300, Gena Makhomed wrote:<br>
>> > On <a href="tel:31.08.2011%2016" value="+13108201116">31.08.2011 16</a>:47, Igor Sysoev wrote:<br>
>> ><br>
>> > >> Чтобы склеивать эти все файлы вместе и<br>
>> > >> передавать как один, запускается PHP script.<br>
>> > >> Он создаёт соответствующий склеенный<br>
>> > >> файл и в следующий раз читает его уже с<br>
>> > >> диска.   Работает это значительно<br>
>> > >> быстрее чем если загружать все четыре<br>
>> > >> CSS файла по отдельности через<link href...><br>
>> > >> для каждого.<br>
>> ><br>
>> > скорее всего, это <a href="http://code.google.com/p/minify/" target="_blank">http://code.google.com/p/minify/</a><br>
>> > или что-то подобное.<br>
>> ><br>
>> > > Да, но какова цена этой склейки.<br>
>> > > Почему бы не склеить их в статический файл для nginx'а,<br>
>> > > да ещё и сделать .gz вариант ?<br>
>> ><br>
>> > таким образом будет проще настраивать, если для разных<br>
>> > страниц надо подключать разные наборы стилей/скриптов.<br>
>> ><br>
>> > когда можно сделать 1 файл style.css/style.css.gz<br>
>> > и 1 файл script.js/script.js.gz - тогда все просто,<br>
>> > в момент выкладывания новой версии сайта на сервер<br>
>> > скриптом просто заново перестраиваются эти 4 файла.<br>
>> ><br>
>> > а когда таких комбинаций файлов css/js десятки и сотни,<br>
>> > то появляется большое количество ручной работы, которую<br>
>> > не совсем понятно как можно автоматизировать без глюков.<br>
>><br>
>> Зачем руками ? Есть Makefile.<br>
>><br>
>> Например, <a href="http://nginx.org" target="_blank">nginx.org</a> (не самый большой сайт, конечно) транслируется из XML<br>
>> в HTML с помощью xsltproc. Потом rsync'ается в каталог, где для файлов<br>
>> делается .gz, а потом это снова rsync'ается в каталог веб-сервера. Всё,<br>
>> что нужно сделать после изменений (как в XML, так и в XSLT), это<br>
>><br>
>>    make all gzip copy<br>
>><br>
>><br>
>> --<br>
>> Игорь Сысоев<br>
>> <a href="http://sysoev.ru" target="_blank">http://sysoev.ru</a><br>
>><br>
>> _______________________________________________<br>
>> nginx-ru mailing list<br>
>> <a href="mailto:nginx-ru@nginx.org">nginx-ru@nginx.org</a><br>
>> <a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a><br>
><br>
><br>
> _______________________________________________<br>
> nginx-ru mailing list<br>
> <a href="mailto:nginx-ru@nginx.org">nginx-ru@nginx.org</a><br>
> <a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a><br>
><br>
><br>
_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org">nginx-ru@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a><br>
</div></div></blockquote></div><br></div>