The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Web Optimizer - решение для автоматического ускорения сайтов на PHP

01.09.2009 14:46

Не так давно российской группой веб-технологов был разработан продукт для автоматического ускорения клиентской части любого PHP-сайта - Web Optimizer. Скорость загрузки большинства сайтов на 80-90% зависит от задержек, вносимых клиентской частью - самой HTML-страницей и всеми объектами, которые на ней расположены. В последнее время активно обсуждаются, проверяются и внедрятся методики для оптимизации процесса загрузки страницы и ускорения ее в несколько (иногда в 10-20) раз.

Web Optimizer находится на переднем плане клиентских технологий и позволяет автоматически применить все самые современные методы для ускорения сайтов (в том числе gzip, объединение файлов, CSS Sprites, data:URI, кэширование на клиентском и серверном уровне, параллельные загрузки, "ненавязчивую" и "отложенную" загрузку и многое-многое другое). Конкретные результаты применения Web Optimizer приведены в сравнительной таблице. Для реальных сайтов зафиксировано ускорение от 3 до 7 раз.

Продукт достаточно прост в установке (она занимает минимум действий и времени, подробное руководство), при этом обладает несколькими десятками настроек, которые позволят тонко сбалансировать необходимые улучшения для сайта.

Исходный код Web Optimizer открыт всем желающим и распространяется в рамках свободной лицензии MIT.

  1. Главная ссылка к новости (http://code.google.com/p/web-o...)
Автор новости: Мациевский Николай
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/23238-php
Ключевые слова: php, web, optimization, speed
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (26) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, anonymous (??), 16:37, 01/09/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    <петросян>Сбылась места, изобрели легендарный УСКОРИТЕЛЬ ИНТЕРНЕТОВ?</петросян>

    Непонятно почему никто еще не написал свою реализацию PHP, взамен смерти-жопе-сотоне имеющегося (см. историю _почему_ для неймспейсов был выбран такой символ — там рассказано про то _какой_ в похапэ парсер, например. это печально).

    Алсо, чем лучше-хуже других решений типа eAccelerator или APC? Или я не так понял что оно делает?

     
     
  • 2.26, oles (?), 17:29, 03/09/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Аноним, вы по русски читать умеете? При чём тут еакселератор или апц??? Это другие технологии. Открою вам по секрету: тут даже ПХП постольку поскольку.

     

  • 1.2, Egres (ok), 16:49, 01/09/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Web Optimizer находится на переднем плане клиентских технологий и позволяет
    > автоматически применить все самые современные методы для ускорения сайтов

    Реклама, что ли?

     
     
  • 2.5, Капитан (??), 18:11, 01/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Реклама, что ли?

    Да.
    всегда ваш К.О.

     
  • 2.23, psyhomo (ok), 19:56, 02/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Пусть и реклама, зато полезный продукт и продвигать его надо. Честно говоря, я бы сказал большое спасибо автору этой вещи (на хабре именуется как sunnybears - его сайт http://webo.in/ )

    ЗЫЖ На всякий пожарный, я не оный автор :)

     

  • 1.3, Имя1 (?), 17:42, 01/09/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > # Client side caching for CSS / JavaScript / HTML files:
    >    * 10 years for CSS / JavaScript;

    Лолшто?

     
     
  • 2.14, Сергей (??), 23:12, 01/09/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    все в порядке
    файлы будут доданы на страницу таким вот образом

    <script src="/js/mega.js?1251832765"></script>

    где 1251832765 - дата последней модификации
    в таком случае пока файл не меняется, нет смысла его загружать заново

     

  • 1.4, Breg (??), 18:00, 01/09/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Есть 2 непонятные мне вещи:
    1) Почему тесты проводились на старом "браузере 3.0.11"?
    2) И что есть "финальное измерение" в фразе "Перед каждым финальным измерением кэш браузера очищался"? Уменьшение времени холодной загрузки страницы меня лично не особо интересует, важнее как быстро загружаются последующие страницы.
     
     
  • 2.6, Breg (??), 19:00, 01/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Но в общем объем проделанной авторами работы впечатляет.
    Спасибо, посмотрю где можно это применить.
     

  • 1.7, Tav (?), 19:45, 01/09/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    1. Почему нельзя реализовать все эти "ускорения" в браузере?
    2. От этого может быть больше толку, чем от локального squid?
    3. Вообще, похоже на костыль.

    Сгодится разве что в качестве плацебо для виндузятников.

     
     
  • 2.8, erema (??), 20:58, 01/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    1. браузер качает все файлы, которые находит в коде страницы. weboptimizer уменьшает количество этих файлов и их размер
    2. вы сравниваете холодное с солёным
    3. напротив, вечьма удобная штука
    и причем тут виндоуз?? это серверное решение
     
     
  • 3.9, pro100master (ok), 21:49, 01/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    а пользоваться, кроме как в вордпрессе, пробовали?

    Разработчику проще самому проделать всё.

     
     
  • 4.10, Alexey (??), 22:09, 01/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Ну да, идите и расскажите разработчикам как должно выглядеть архитектура их приложения. Эта штука для администраторов, а не для разработчиков.
     
     
  • 5.11, pro100master (ok), 22:46, 01/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    администраторы не должны лезть в код, дизайн и прочее неадминское дело :)))
     
     
  • 6.16, Alexey (??), 00:06, 02/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    а где вы там нашли про то, что нужно в код лезть? там как раз говорится, что это универсальное решение для PHP приложений.
     
  • 4.18, Николай (??), 03:20, 02/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Приложение экономит часы работы разработчика. Чем десятки раз проделывать одну и ту же работу, боясь ошибиться, можно довериться автоматике: она не подведет.

    Хотя для начала надо создать такую автоматику, чтобы не подводила :)

     
  • 3.12, Tav (?), 22:46, 01/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    > и причем тут виндоуз?? это серверное решение

    Везде говорится про client-side. Так оно на клиенте или на сервере работает? Сравнения были сделаны из предположения, что на клиенте.

     
     
  • 4.13, Tav (?), 22:48, 01/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    ...но чувство костыля остается все равно.
     
  • 4.15, pro100master (ok), 23:12, 01/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    на сервере, но оптимизация (что сильно - враньё, т.к. кеш и хуки убоги, достаточно в код залезть) на благо клиентского рендера - попытка минимизации http запросов и мизерное снижение траффика.

    а костылём это выглядит потому, что OSS проект - скорее реклама своих услуг

     
     
  • 5.17, Николай (??), 03:18, 02/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Интересно посмотреть на пример "неубогих хуков", которые работали бы на таком же количестве систем.

    Серверное и клиентское кэширование (которые реализуется 10 строками на PHP) не самая сильная сторона Web Optimizer (тут либо создавать свой APC, либо и усиливать нечего - только под конкретные системы). Но, например, корректную логику объединения CSS Sprites никто даже не берется писать, а в приложении она уже реализована.

     
     
  • 6.21, pro100master (ok), 11:05, 02/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Склейка CSS, JS файлов? Да бросьте вы. Это далеко не "ноу-хау" http://dklab.ru/lib/HTTP_StaticMerger/ (как частный случай).

    Теперь про хук. Проверка на кеш в данном случае (а код таки вставляется в мои скрипты) много дороже, чем могло бы быть. Чисто архитектурно. Посмотрите "дклабовский" вариант. У них он еще дешевле.

    Хотя да, если вы только открыли для себя мир сайтостроения, то эта шняга может вам пригодится на первых порах :)))

     
     
  • 7.24, Николай (??), 10:54, 03/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    У меня все же сложилось ощущение, что Вы крайне поверхностно сравнили продукты. В обоих случаях имя файла формируется на основе имен, в обоих случаях проверяется лишь существование закэшированного файла и его mtime (причем Web Optimizer обходится только последним, что чуть оптимальнее).

    Если у Вас есть контр-аргументы, с радостью выслушаю. Но пока у меня заявление одно: "Вы не правы".

    Что самое интересное, Web Optimizer сейчас активно используют именно продвинутые вебмастера, потому что понимают, что это приложение делает, и рады, что не нужно это делать каждый раз руками.

     
  • 7.25, Николай (??), 10:56, 03/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    да, про склейку CSS/JS речь не шла -- что Вы так на простейшую технологию накинулись? Вы бы еще реализацию gzip попытались сравнить :)
     
  • 5.20, Aleksey (??), 10:12, 02/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Странная позиция: сначала все кричат, что на ОпенСоурсе можно зарабатывать, а когда кто-то пытается - кричат "А-а, они зарабатывают на ОпенСоурсе".
     
     
  • 6.22, pro100master (ok), 11:06, 02/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Странная позиция: сначала все кричат, что на ОпенСоурсе можно зарабатывать, а когда
    >кто-то пытается - кричат "А-а, они зарабатывают на ОпенСоурсе".

    можно. ну вот почему то тот же ExtJS не вызывает... ну вы поняли. Домашнее задание: подумать почему :)))

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру