Главная » Скрипты » Web Optimizer 0.4.7 — заставь Datalife engine работать быстрее!

Web Optimizer 0.4.7 — заставь Datalife engine работать быстрее!

  • Скрипты

Web Optimizer 0.4.7 — заставь Datalife engine работать быстрее!


Web Optimizer может:

* Директории кэширования располагаются по умолчанию в вышеупомянутой папке cache, менять не рекомендуется (особенно, если вы зададите их вне дерева сайта — тогда закэшированные файлы просто не загрузятся). Сюда складываются минимизированные и объединенные javascript- и CSS-файлы и картинки, полученные от CSS Sprites.
* Minify убирает из CSS- и JS-Файлов все ненужные символы. CSS при использовании CSS Sprites минимизируется через CSS Tidy, иначе внутренним алгоритмом. javascript — через JSMin. HTML — при помощи внутреннего алгоритма. При минимизации CSS-файлы объединяются в один (даже с различными media-параметрами)Планируется добавить поддержку YUI Compressor и Packer.
* GZIP отвечает за gzip-сжатие файлов. Если используется .htaccess, то все настройки по сжатию (и клиентскому кэшированию) располагаются в нем. Иначе все сжатие выполняется с помощью PHP.
* Expires в далеком будущем гарантирует, что будучи единожды загруженными статические файлы будут запрошены с сервера только при своем изменении (сброс кэша осуществляется на уровне проверки даты изменения файла, но работает только для CSS- и javascript-файлов).
CSS Sprites автоматически создает из исходных фоновых изображений в CSS-файлах набор CSS Sprites (подробнее о механизме генерации CSS Sprites). Есть настройка для создания полноцветных изображений в JPEG-формате (меньше по размеру, но возможны проблемы с прозрачностью). Новые изображения заменяют старые эквиваленты в итоговом CSS-файле.
* data:URI заменяет все фоновые изображения в файле на их data:URI, добавляя правила для IE6-/7. Стоит осторожно использовать при большом объеме CSS Sprites — итоговый файл может получиться весьма значительным.
* .htaccess позволяет записать условия gzip-сжатия и кэширования файлов в .htaccess-файле, чтобы перенести работу по кэшированию и архивированию с PHP на Apache. По необходимости правила можно перенести и в httpd.conf, При подключении .htaccess Apache анализируется на предмет подключенных модулей и автоматически выбираются доступные, если какой-то модуль был выбран в конфигурации, но не доступен, то относящиеся к нему правила записаны не будут.
* Очистка кэширующей директории позволит автоматически «подчищать» старые версии файлов в серверном кэше. Если на сайте используются разные наборы исходных файлов в head, то опцию нужно отключить, иначе файлы в кэше будут постоянно обновляться.
* При возможности записи корневого файла index.php появится опция auto_rewrite (начиная с версии 0.2.5). Если она включена, то все необходимые инструкции автоматически добавятся в файл.
* Многое другое, о чем можно прочесть на сайте проекта.

Поддерживаемые системы

* Wordpress (2.7.1)
* Joomla (1.0.15, 1.5.0, 1.5.9, 1.5.10), Joostina (1.2)
* Drupal (6.10, 5.16)
* Typo3 (4.2)
* PHP Nuke (8.0)
* Simpla
* Etomite (1.1), MODx (0.9)
* LiveStreet (0.2, 0.3)
* vBulletin (3.8)
* Santafox (1.1)
* Zend Framework (with disabled rewrite for Web Optimizer)
* DataLife Engine (DLE) (8.0)
* Zend Framework
* Symfony (1.2)
* CodeIgniter (1.7), MaxSite (0.3)
* Any custom PHP CMS written w/ right hands


Добавление DLE в список поддерживаемых систем вызвало бурный отклик (мною замечено порядка 5 новостей на различных про-DLE сайтах), поэтому ниже постараюсь ответить на несколько наиболее распространенных вопросов.

1. Web Optimizer платный проект?
Нет, проект (на данный момент) абсолютно бесплатный и загружаемый свободно. Есть некоторые планы по его монетизации, но они пока не озвучены (может быть, платной будет только установка для сайтов с посещаемостью более 1000 хитов в сутки, например). Если у вас есть предложения, которые позволил бы окупить качественную разработку и были бы выгодны вам лично, их можно написать в комментариях.

2. Web Optimizer от гугла?
Нет, проект разрабатывается группой активистов (прямо или косвенно связанных с webo.in). Google Code — просто хостинг для файлов и SVN, почти что narod.yandex.ru. Вы же сайты на Народе не называете проектами Яндекса, правда?

3. Web Optimizer грузит сервер?
Нет, проект разрабатывается с учетом самых высоких требований к производительности. Наоборот, при правильной настройке сервера нагрузка только уменьшится. Давайте рассмотрим такой случай: на странице у нас находится 3 файла стилей и 5 файлов скриптов. Средний посетитель просматривает за присест 3 страницы. Web Optimizer создаст 1 файл скриптов и 1 файл стилей. При загрузке каждой страницы данные файлы будут только проверены на существование (это менее ресурсоемко, чем их отдача пользователю). За счет клиентского кэширования данные файлы будут запрошены пользователем только при первом заходе на сайт. Итого имеем выигрыш на каждого пользователя в:
(3 + 5) * 3 — (2 + 2 * 3 *~0,2) ~= 20 запросов к серверу.
Налицо явное преимущество.

4. Фигня полная?
Нет, не полная :). Проект разрабатывается отечественными разработчиками и по функциональности не имеет аналогов в мире. При правильной установке и настройке способен обеспечить ускорение сайта порядка 10 раз. Обычно это 3-5 раз.

5. После установки возможны ошибки?
Да, естественно. Поскольку приложение некоммерческое, то тестами покрыты далеко не все случаи. Если у вас возникли проблемы в ходе или после установки, то стоит запостить их сюда
http://code.google.com/p/web-optimizator/issues/list
они будут довольно быстро решены (при воспроизводимой по описанию ошибке).

6. Сколько гугл запросил за скриптик?
Пока предложений от гугла не поступало :)

7. Куда и зачем он лезет?
Алгоритм оптимизатора довольно сложен, в двух словах его не описать. Более-менее подробные документы выложены здесь (на английском)
http://code.google.com/p/web-optimizator/wiki/Welcome
Если совсем кратко, то Web Optimizer перехватывает выводимый HTML от серверного движка, оптимизирует его (создает кэшированные версии необходимых файлов) и отдает в браузер уже полностью «перелопаченным» (на данный момент изменяется только head-секция + при наличии параллельных хостов меняются пути к ним в самом документе).

8. Многа букв!
Здесь все описано намного подробнее:
http://webo.in/articles/
http://speedupyourwebsite.ru/books/speed-up-your-website/online/
если будет желание, можно значительно увеличить свой багаж знаний о клиентской оптимизации

9. Лень раздолбиватся с настройками...
Настройки по умолчанию конфигурируется для оптимальной производительности при установке приложения. Сам Web Optimizer спроектирован таким образом, чтобы не перегружать ненужной информацией (есть режим «Быстрой установки»). Также доступны опции «Изменение настроек», «Обновление», «Очистка кэша» и «Удаление».

Если есть еще вопросы — можно задать в приват, комментариях или по
http://webo.in/contacts/



Установка:

В index.php добавить в самый верх

<?php
require('/home/site/domains/site.com/public_html/web-optimizer/web.optimizer.ph
p');
?>


и в самый низ -

<?php
$web_optimizer->finish();
?>




Автор: webo.in
Стоимость: Бесплатно

источник: webo.in, habrahabr.ru, 4dle.ru

Ключевые слова по теме Web Optimizer 0.4.7 — заставь Datalife engine работать быстрее!: Web Optimizer, Веб Оптимизатор, DLE