Клиентская оптимизация

индекс
163,90

Эксперимент — сколько живых денег может принести ускорение загрузки сайта.

Дано: подопытный инетмагазин, вполне успешный в своей области, более тысячи посетителей ежедневно.
Задача: выяснить как скажется на выручке оптимизация загрузки страниц.

На сайт был установлен невидимый яваскрипт-счётчик, который фиксировал время до наступления события window.onload и некоторые другие параметры, в течении 5 рабочих дней собиралась статистика и обкатывался её анализатор. После этого за выходные были проведены следующие работы по оптимизации сайта:

— общий объём графики и стилей был уменьшен (c 300 до 200 килобайт для главной страницы) практически без потери качества.
— изменён порядок загрузки внешних счётчиков, убрано их разделение на две картинки.
— проставлены правильные заголовки кеширования для статики
— включено сжатие для стилей и яваскрипта

Больше всего хлопот разумеется было с графикой, некторые фоновые картинки пришлось перерисовывать. Не всё удалось сделать как хотелось бы, так как не было команды «добро» на серьёзную переработку шаблонов и фоновых картинок сайта.

Итак, после оптимизации счётчик стал писать в новый лог, и стало возможно сравнить что было «до» и «после». Интересовал в первую очередь процент просмотров, которые «уложились» в 2 и 4 секунды, причём отдельно, для посещения сайта впервые, и для просмотра последующих страниц.

Первые страницы: до оптимизации в 2с. уложились 30%, после — 50%. В 4с. уложились 57% и 65% соответственно.
Повторные просмотры: Две секунды: до — 58%, после — 80%. 4 секунды: до — 79%, после — 88%.

А теперь самое интересное. Если взять количество поступивших заказов (включая звонки по телефону) и посчитать отдачу от сайта с учётом разницы в посещаемости, то получим прибавку не менее 10%.

Да, учитывалась не выручка как таковая, а именно звонки и попытки сделать заказ. Финансовая отдача слишком сильно зависит от качества работы менеджеров, чтобы разницу можно было оценить «в рублях».

Вообще накопилось уже изрядно интересной статистики, чуть позже проанализирую и выложу либо отдельным постом либо сюда же.
+75
29 октября 2008, 13:38
32

комментарии (41)

+1
sunnybear #
получается, что критическое время равно именно 4 секундам: прирост посетителей, уложившихся в него, как раз укладывается в прирост телефонных звонков
0
Joka #
спасибо за такую информацию
4 секунды загрузка страницы это очень много, хотя наверное ваши посетители просто на медленных каналах.
а есть статистика по формированию страницы?
–1
sunnybear #
4 секунды — это очень мало :)
Например, сейчас отсюда (канал несколько сотен килобайт) сайт vmware загрузится за 9 секунд
+1
Joka #
гугл у меня грузится мгновенно — вот это называется очень мало :)
сайт vmware грузится за 1.5 секунды

поэтому я считаю что 4 секунды это много — но тут главное еще время формирования — если у юзера канал 28800 то ускорить ему загрузку данных проблемно :) хотя можно
+2
sunnybear #
ну, сравнили, гугл с одной картинкой и вмваре с 101.
+ я подозреваю, что 1,5 секунды — цифра с потолка. Еще секунды 3 доходили остальные картинки. Есть же понятие «визуальной» загрузки страницы и «полной» загрузки.
–7
CriggerMarg #
с моим каналом в 8 мбит\с vmware загрузилась за секунду.
Так что все же 4 секунды — это много
0
spanasik #
хорошие серверы у vmware :-)
+4
ayavryk #
У Нильсена были данные:

1 секунда — максимальный комфортом
после 3 секунд начинает испытывать дискомфорт
после 10 секунд уходит на другой сайт.
+2
RomeoUA #
интересно, сколько заняли времени затраты на оптимизацию сайта?
сравнимы ли ресурсы затраченные на оптимизацию с выгодой, если же все равно камнем преткновения остаются менеджеры?
0
alex946 #
Настройка сервера заняла около получаса. На переделку шаблонов и графики времени ушло заметно больше, почти целый рабочий день. Даже скорее не на саму переделку, а на проверку в разных браузерах, не всё удачно вышло с первого раза. В целом весьма выгодная операция — это же небольшая разовая трата, а результат будет ощущаться постоянно.
+4
poiza #
Вы никогда на регистрировали 10+% прирост «на пустом месте» (независящие от компании причины)? Как сезонных изменений и конъюнктуры рынка?
+1
alex946 #
В данном случае оченм момент подходящий, две недели спокойной работы, посещаемость идентичная, асортимент и цены тоже… опять же — я считал удельный прирост — с учётом просмотров страниц/уников. К концу этой недели накопится ещё циферок, можно будет больше выяснить.
+2
roboter #
согласен, например первые недели месяца у людей зарплата!
+1
malaka #
хм, в общем, звучит красиво. я был бы крайне рад, если всё это правда. но мне кажется, что оптимистичные выводы можно делать не сразу: в статье, к сожалению, не указано (или я ослеп на один глаз?), сколько времени прошло ПОСЛЕ оптимизации. да, так вот: для того, чтобы сделать вывод о том, что именно оптимизация принесла некий прирост, и для чистоты эксперимента, я бы понаблюдал за страницей ещё некоторое время, причём обязательно не делая более никаких изменений, кроме уже сделанных/описанных.
огромная просьба: понаблюдайте, пожалуйста, за страницей недельку/две и доложите читателям – оооочень интересно! спасибо.
0
alex946 #
Да, примерно так и планируется действовать. Через пару недель возможно будет ещё один тест, уже по более точной методике, если конечно это хоть кому-то со стороны заказчика будет нужно.
+1
YuriChetverikov #
имхо, слишком рано автор сделал выводы. еще ведь куча внешних факторов.

ну куда ж вы торопитесь… никакие не 10 процентов… блин.
–7
RommeDeSerieux #
Из грамотного подсчёта могло бы выйти хорошее обоснование перехода от табличной вёрстки к дизайну по стандартам. Но нет, не вышло грамотного подсчёта.
+4
alex946 #
А там и не было никогда табличной вёрстки.
0
ayavryk #
www.xserver.ru/computer/langprogr/html/42/ Статья была написана мной в 2002 году.
+2
LifeOS #
Может просто совпадение?
–2
fkndfatum #
При создании подобных проектов неплохо было бы проводить предварительное нагрузочное тестирование. И оптимизировать сайт заранее, не дожидаясь наплыва посетителей. Для этих целей вполне подойдет Jmeter.
+1
alex946 #
Разумеется. Было бы неплохо. Но вот есть имеющийся сайт, работающий не первый год. И неплохо работающий. Как быстро и без затей показать заказчику что можно и поболее из него выжать?
–4
Novikov #
Тест некорректен. Выводам доверять нельзя. Нужно сплит-тестирование.
+1
alex946 #
К сплиту оказались не готовы владельцы сайта, ни морально ни технически. После этой простой «демонстрашки» задумались. Уже прогресс.
0
gaech #
Мне особенно понравился заключительный аккорд, что «финансовая отдача слишком сильно зависит от качества работы менеджеров». Тогда к чему такой заголовок?
НЛО прилетело и опубликовало эту надпись здесь
0
MegafonUral #
а с точки зрения психологии покупателей
можно как-то связать секундное ускорение загрузки страницы с готовностью сделать заказ?
0
Gregory #
вы продавцу деньги заплатили, а он вам товар не сразу отдает, а как будто заторможенно. Подозрительно, не правда ли?
Каждая секунда ожидания на сайтах, связанных с платежами, это секунда подозрений.
+1
alex946 #
Не совсем так. Понаблюдали уже люди за посетителями… Сейчас многие используют вкладки, или попросту открывают несколько окон браузера. В итоге — если сайт явно тормозит, посетитель думает «ну пока оно грузится я другую ссылочку в поисковике проверю» и переключается на другой таб, и может ведь и не вернуться. Ещё один типичный пример поведения — закрытие окна с недогрузившимися картинками. Получается что основная цель не столько сократить время загрузки как таковое, столько удержать внимание посетителя до тех пор, пока у него не отложится в памяти как минимум название магазина и внешний вид сайта.
0
macsyk #
Согласен. Вообще ускорение загрузки хорошо влияет не на посещаемость а на количество хитов.
Если сайт зарабатывает на контексте — прямая выгода :)
0
GKelpi #
Надо замеры несколько раз проводить, чтобы говорить так уверено.
А то что оптимизация дело всегда полезное и оправданное — Верно.
0
blockdog #
Мне интереснее, на самом деле, как вы момент начала загрузки фиксируете?
Ведь если это JS-счетчик, он запускается только когда построена DOM модель, или по крайней мере построена до месте, где идет запуск этого самого счетчика. А перед этим еще секунд 5 может сервер тупить…

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

PS: 4 секунды для 1000 пользователей в день — это очень-очень долго…
PPS: есть у меня подозрение, что из этих четырех секунд три тратятся на то, чтобы получить какой-нибудь мерзкий liveinternet'овский счетчик с медленного сервака…
0
alex946 #
Страница генерится сервером достаточно быстро, тут всё без проблем.
+10
leoneed #
Очень не нравятся нынешние тенденции в сайтостроении: каналы жирные — юзер всё стерпит. А ещё и библиотек скриптовых и флеша — процы тоже мощьные.
И получается, что больше 5-ти сайтов открыть нельзя, браузер нагибает коре2дуо как z-80.

Давайте ка посмотрим на психологию покупателя и обсудим что он испытывает и чем руководствуется.
Вы — посетитель. Есть у Вас 500$ на неплохую мыльницу-фотик, хотите выбрать и купить в инете:
— Идём в поисковик, вбиваем «Купить фотик». Вылез список.
— Все ссылки открываются в новых табах, сразу штук 10. (мы же хотим посравнивать, выбрать подешевле-получше). Тут то надежды на жирный канал испаряются. 10х200км = 2 метра (((
— Сайты, которые загружатся медленнее всех сразу откидываем, так как и так много уже понаоткрывали.
— Начинаем изучать оставшиеся. Бегаем по менюшкам, пользуемся поиском по сайту, грузим ИЗОБРАЖЕНИЯ товара, открываем разные страницы с одного сайта в других табах. И всё это одновременно на оставшихся 7-8-ми сайтах. Само собой 2-3 сайта испортят настроение своей тупостью и будут закрыты.
— А вот теперь уже спокойно выбираем товар и прицениваемся.

Я всё это к чему? Давайте посмотрим на обратную сторону ЖИРНЫХ КАНАЛОВ.
Не только создатели сайтов надеются на жирные каналы. В первую очередь в них верят сами владельцы этого канала. И поэтому грузят много сайтов одновременно, при этом болтая по скайпу через вебкамеру, слушая радио онлайн, загружая ролики на ютубе не выключая торента с порнухой. Но не смотря на всё это, они убеждены, что если сайт плохо грузится — то он плохо написан, так как канал у них толстый.

Лично я отстаиваю борьбу за лаконичность и простоту сайтов. Минимум графики, минимум флеша и скриптов. И боротся за время загрузки до конца.
0
alex946 #
Да, известно что чем быстрее канал тем менее терпелив пользователь. Это абсолютно точно. Реальные дзен-буддисты лазят в сеть со включёнными картинками через ГПРС.
+2
leoneed #
Кстати, не маловажный прикол:
Пользователей безпроводного и мобильного интернета всё больше и больше. GPRS, EDGE, 3G, WiFi халявный и дико тупой, но эти пользуются. Это набирающая обороты аудитория с дохлыми каналами.
0
Roman_Mix #
миф. На самом деле так поступит лишь тот, кому сумма очень важна, а таких не более 40%. Да, лучше сосредоточеться на 10% самых богатых.
0
macsyk #
Всеми частями тела за :) Кстати, не стоит забывать, что даже при одинаковом (в теории канале) скорость может значительно отличаться. Пинг большой и т. д
НЛО прилетело и опубликовало эту надпись здесь
–1
Roman_Mix #
1000 посетителей, т. е. клиентов около 60 человек в день, следовательно максимум 3 оператора + 7 курьеров + 2 менеджера +… = офис в районе 1500 тысяч у. е. в месяц. Хм, много графики. Хм, или подарки, или цветы.
10% рост «попытки сделать заказ» и отсутствие премии от руководства говорит о том, что или руководство занято более серьезными вещами (что вряд ли), либо не хочет связываться с лишними расходами (увеличение штата). Хм, следовательно это все же цветы или любой живой товар (еда там, бабочки).
Ладно, ну а теперь о том, что я думаю, если был бы 10% рост попыток заказа (это когда пытаются, но им не дают заказать?), то отсюда единственный вывод: это флуктуация, поскольку иначе бы руководство забеспокоилось. Следовательно, в следующем отчетном периоде можно прогнозировать снижение продаж. Хе.
+4
egorinsk #
У меня своя версия: пользователь открывает из гугла или сервиса вроде price ru несколько окон, в фоне, те из них что раньше загрузятся, как-то мигают в панели браузера, или на панели задач, соответственно, на них он кликает в первую очередь, и вероятность заказа выше.

Убедительно?

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.