Юрий Устинов, РУСОНИКС
Электронная торговля - 2012
ХЫ-ХЫ-ХЫ
0,1сек. — свободное
течение
0,1сек. — свободное
течение
1сек. — прерывание
мысли
0,1сек. — свободное
течение
1сек. — прерывание
мысли
10сек. — отвлечение
на другие дела
Google
Google, 9 апреля 2010
Мы включили новый
критерий в наш алгоритм
поискового ранжирования:
скорость сайта.
Make the Web Faster
http://googlewebmastercentral.blogspot.com/../
Яндекс
Google
Браузер «для реальных дорог»
Google, 9 апреля 2010
Мы включили новый
критерий в наш алгоритм
поискового ранжирования:
скорость сайта.
Make the Web Faster
http://googlewebmastercentral.blogspot.com/../
МИР: 3 сек., мобильные – 5 сек.
МИР: 3 сек., мобильные – 5 сек.
РФ: 2,5 сек. По данным Google Analytics на апрель 2012
http://analytics.blogspot.com/
МИР: 3 сек., мобильные – 5 сек.
РФ: 2,5 сек.
на 11% меньше просмотров
на 16% меньше довольных посетителей
на 7% ниже конверсия
По данным Google Analytics на апрель 2012
http://analytics.blogspot.com/
По данным Aberdeen Group
1 2 3 4 5 6 7 8 9 10
3 500
3 000
2 500
2 000
1 500
1 000
Время загрузки страницы, мс
Интернет-канал, Мбит/с
Источник: More Bandwith Doesn't Matter (much)
1 2 3 4 5 6 7 8 9 10
3 500
3 000
2 500
2 000
1 500
1 000
Время загрузки страницы, мс
Интернет-канал, Мбит/с
Источник: More Bandwith Doesn't Matter (much)
Проблема
ТОЛСТОГО
самолета
Shopzilla Site Redo Presentation
shopzilla.com
октябрь, 2008
Источник:
Shopzilla Site Redo Presentation
shopzilla.com
октябрь, 2008
Конверсия: +7-12%
Кол-во показов: +25%
Доступность: 99,71% → 99,94%
Источник:
Shopzilla Site Redo Presentation
shopzilla.com
октябрь, 2008
Конверсия: +7-12%
Кол-во показов: +25%
Доступность: 99,71% → 99,94%
Инфраструктура: -50% (200 серверов вместо 402)
Источник:
Задача: выявить основные факторы,
влияющие на время загрузки страниц
Результат: конкретные рекомендации
Методика: измеряем → улучшаем →
→ измеряем → делаем выводы
Интернет-магазин мебели «из коробки»,
виртуальный сервер с 1Гб памяти, 2
процессорами по 1ГГц, быстрый дисковый
массив
Посетитель: виндовс, эксплорер, интернет
1,5 Мбит/с
Виртуальный сервер: 2 х 1 ГГц, 1 Гб памяти
Интернет-магазин: «из коробки»
Измерение: sitespeed.ru, webpagetest.org
Времязагрузкистраницы,сек.
Количество одновременных посетителей
2,8 сек
Магазин без нагрузки
Времязагрузкистраницы,сек.
Количество одновременных посетителей
+0,3 сек
или +10% к замеру при 0
Времязагрузкистраницы,сек.
Количество одновременных посетителей
+1,4 сек!
или +50% к замеру при 50
Времязагрузкистраницы,сек.
Количество одновременных посетителей
приехали
Времязагрузкистраницы,сек.
Количество одновременных посетителей
1,6 сек
до 130 посетителей
Загрузка страницы:
Создание страницы:
0,70 сек → 0,16 сек
Передача контента:
2,20 сек → 1,20 сек
3 сек → 1,6 сек
70
130
одновременных
посетителей
1. Установка соединения
1. Установка соединения
2. Генерация страницы на сервере
1. Установка соединения
2. Генерация страницы на сервере
3. Передача контента по сети
1. Установка соединения
2. Генерация страницы на сервере
3. Передача контента по сети
70-90%
возможностей
для ускорения
1. Разрешите серверу удерживать соединения
KeepAlive
1. Разрешите серверу удерживать соединения
2. Размещайте магазин ближе к потребителям
KeepAlive
1. Разрешите серверу удерживать соединения
2. Размещайте магазин ближе к потребителям
3. Минимизируйте количество файлов
KeepAlive
1. Настройте сервер по рекомендациям CMS
1. Настройте сервер по рекомендациям CMS
2. Установите легкий веб-сервер NGINX
1. Настройте сервер по рекомендациям CMS
2. Установите легкий веб-сервер NGINX
3. Используйте PHP-акселераторы, н-р, APC
1. Настройте сервер по рекомендациям CMS
2. Установите легкий веб-сервер NGINX
3. Используйте PHP-акселераторы, н-р, APC
4. Включайте встроенное кэширование в CMS
1. Включите сжатие текста (gzip, deflate)
1. Включите сжатие текста (gzip, deflate)
2. Настройте заголовки Expires для статики
1. Включите сжатие текста (gzip, deflate)
2. Настройте заголовки Expires для статики
3. Удаляйте неиспользуемые стили и скрипты
1. Включите сжатие текста (gzip, deflate)
2. Настройте заголовки Expires для статики
3. Удаляйте неиспользуемые стили и скрипты
4. Минимизируйте изображения
Особое внимание!
PNG, 440 Кб
Оригинал
JPG, 31 Кб
Копия
Примерный размер на сайте
главная
2,6 Мб
16 сек
каталог
20,2 Мб
119 сек
ШТО?
Загрузка страницы: 13,3 с
Начало отображения: 3,9 с
Объем данных: 2,5 Мб
Запросы к серверу: 146
12 CSS
20 java-скриптов, в т.ч. _6_ с элементами jquery
Оптимизация скриптов и стилей: -0,5 сек.
Объединение файлов: -0,6 сек.
Отложенная загрузка слайдов: -3…-5 сек.
36 стандартных png-изображений
Объединение png в спрайт: -0,6 сек.
3 шрифта без кэширования: -0,3 сек.
Перенос изображений на под-домен, н-р img.euroset.ru: -1..2 сек
Отказаться от анимированной собаки на сайте: бесценно
Заголовок expires для статики: -4 сек. при повторной загрузке
Данные: sitespeed.ru, webpagetest.org
12 CSS
20 java-скриптов, в т.ч. _6_ с элементами jquery
Оптимизация скриптов и стилей: -0,5 сек.
Объединение файлов: -0,6 сек.
Отложенная загрузка слайдов: -3…-5 сек.
36 стандартных png-изображений
Объединение png в спрайт: -0,6 сек.
3 шрифта без кэширования: -0,3 сек.
Перенос изображений на под-домен, н-р img.euroset.ru: -1..2 сек
Отказаться от анимированной собаки на сайте: бесценно
Заголовок expires для статики: -4 сек. при повторной загрузке
Данные: sitespeed.ru, webpagetest.org
12 CSS
20 java-скриптов, в т.ч. _6_ с элементами jquery
Оптимизация скриптов и стилей: -0,5 сек.
Объединение файлов: -0,6 сек.
Отложенная загрузка слайдов: -3…-5 сек.
36 стандартных png-изображений
Объединение png в спрайт: -0,6 сек.
3 шрифта без кэширования: -0,5 сек.
Перенос изображений на под-домен, н-р img.euroset.ru: -1..2 сек
Отказаться от анимированной собаки на сайте: бесценно
Заголовок expires для статики: -4 сек. при повторной загрузке
Данные: sitespeed.ru, webpagetest.org
12 CSS
20 java-скриптов, в т.ч. _6_ с элементами jquery
Оптимизация скриптов и стилей: -0,5 сек.
Объединение файлов: -0,6 сек.
Загрузка всех слайдов одновременно
Отложенная загрузка слайдов: -3…-5 сек.
36 стандартных png-изображений
Объединение png в спрайт: -0,6 сек.
3 шрифта без кэширования: -0,5 сек.
Перенос изображений на под-домен, н-р img.euroset.ru: -1..2 сек
Отказаться от анимированной собаки на сайте: бесценно
Заголовок expires для статики: -4 сек. при повторной загрузке
Данные: sitespeed.ru, webpagetest.org
12 CSS
20 java-скриптов, в т.ч. _6_ с элементами jquery
Оптимизация скриптов и стилей: -0,5 сек.
Объединение файлов: -0,6 сек.
Загрузка всех слайдов одновременно
Отложенная загрузка слайдов: -3…-5 сек.
36 стандартных png-изображений
Объединение png в спрайт: -0,6 сек.
3 шрифта без кэширования: -0,5 сек.
Перенос изображений на под-домен, н-р img.euroset.ru: -1..2 сек
Отказаться от анимированной собаки на сайте: бесценно
Заголовок expires для статики: -4 сек. при повторной загрузке
Данные: sitespeed.ru, webpagetest.org
Время загрузки страницы: 13,3 → 7,0 сек.
Начало отображения: 3,9 → 2,8 сек.
Запросы к серверу: 146 → 105
Почитать:
Исследование факторов, влияющих на скорость загрузки сайтов. Rusonyx (рус)
Инициатива Google: Make The Web Faster (eng)
Подборка кейсов, публикаций, инфографики (eng)
Протокол SPDY (Google)
Измерить и оценить:
SiteSpeed.ru – сервис для РФ, по-русски + подробный отчет с рекомендациями
WebPageTest.org (eng) – зарубежный сервис
PageSpeed Insights (eng) – сервис Google
Yslow (eng) – плагин для браузеров. Измеряет и дает рекомендации (Yahoo)
Уменьшить изображения без потери качества: Smush.it (Yahoo)
Использовать в аналитике: About Site Speed (Google Analytics)
Поэкспериментировать (админам): mod_pagespeed (apache)
Юрий Устинов РУСОНИКС
Facebook: yuri.ustinov rusonyx
Twitter: @sukahitriy @rusonyx
Email: u@rsnx.ru info@rusonyx.ru
http://rusonyx.ru/
http://SiteSpeed.ru/

Скорость работы интернет магазина

  • 1.
  • 5.
  • 6.
  • 7.
  • 8.
    0,1сек. — свободное течение 1сек.— прерывание мысли 10сек. — отвлечение на другие дела
  • 9.
    Google Google, 9 апреля2010 Мы включили новый критерий в наш алгоритм поискового ранжирования: скорость сайта. Make the Web Faster http://googlewebmastercentral.blogspot.com/../
  • 10.
    Яндекс Google Браузер «для реальныхдорог» Google, 9 апреля 2010 Мы включили новый критерий в наш алгоритм поискового ранжирования: скорость сайта. Make the Web Faster http://googlewebmastercentral.blogspot.com/../
  • 11.
    МИР: 3 сек.,мобильные – 5 сек.
  • 12.
    МИР: 3 сек.,мобильные – 5 сек. РФ: 2,5 сек. По данным Google Analytics на апрель 2012 http://analytics.blogspot.com/
  • 13.
    МИР: 3 сек.,мобильные – 5 сек. РФ: 2,5 сек. на 11% меньше просмотров на 16% меньше довольных посетителей на 7% ниже конверсия По данным Google Analytics на апрель 2012 http://analytics.blogspot.com/ По данным Aberdeen Group
  • 14.
    1 2 34 5 6 7 8 9 10 3 500 3 000 2 500 2 000 1 500 1 000 Время загрузки страницы, мс Интернет-канал, Мбит/с Источник: More Bandwith Doesn't Matter (much)
  • 15.
    1 2 34 5 6 7 8 9 10 3 500 3 000 2 500 2 000 1 500 1 000 Время загрузки страницы, мс Интернет-канал, Мбит/с Источник: More Bandwith Doesn't Matter (much) Проблема ТОЛСТОГО самолета
  • 16.
    Shopzilla Site RedoPresentation shopzilla.com октябрь, 2008 Источник:
  • 17.
    Shopzilla Site RedoPresentation shopzilla.com октябрь, 2008 Конверсия: +7-12% Кол-во показов: +25% Доступность: 99,71% → 99,94% Источник:
  • 18.
    Shopzilla Site RedoPresentation shopzilla.com октябрь, 2008 Конверсия: +7-12% Кол-во показов: +25% Доступность: 99,71% → 99,94% Инфраструктура: -50% (200 серверов вместо 402) Источник:
  • 19.
    Задача: выявить основныефакторы, влияющие на время загрузки страниц Результат: конкретные рекомендации Методика: измеряем → улучшаем → → измеряем → делаем выводы
  • 20.
    Интернет-магазин мебели «изкоробки», виртуальный сервер с 1Гб памяти, 2 процессорами по 1ГГц, быстрый дисковый массив Посетитель: виндовс, эксплорер, интернет 1,5 Мбит/с Виртуальный сервер: 2 х 1 ГГц, 1 Гб памяти Интернет-магазин: «из коробки» Измерение: sitespeed.ru, webpagetest.org
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
    Загрузка страницы: Создание страницы: 0,70сек → 0,16 сек Передача контента: 2,20 сек → 1,20 сек 3 сек → 1,6 сек
  • 28.
  • 30.
  • 31.
    1. Установка соединения 2.Генерация страницы на сервере
  • 32.
    1. Установка соединения 2.Генерация страницы на сервере 3. Передача контента по сети
  • 33.
    1. Установка соединения 2.Генерация страницы на сервере 3. Передача контента по сети 70-90% возможностей для ускорения
  • 34.
    1. Разрешите серверуудерживать соединения KeepAlive
  • 35.
    1. Разрешите серверуудерживать соединения 2. Размещайте магазин ближе к потребителям KeepAlive
  • 36.
    1. Разрешите серверуудерживать соединения 2. Размещайте магазин ближе к потребителям 3. Минимизируйте количество файлов KeepAlive
  • 37.
    1. Настройте серверпо рекомендациям CMS
  • 38.
    1. Настройте серверпо рекомендациям CMS 2. Установите легкий веб-сервер NGINX
  • 39.
    1. Настройте серверпо рекомендациям CMS 2. Установите легкий веб-сервер NGINX 3. Используйте PHP-акселераторы, н-р, APC
  • 40.
    1. Настройте серверпо рекомендациям CMS 2. Установите легкий веб-сервер NGINX 3. Используйте PHP-акселераторы, н-р, APC 4. Включайте встроенное кэширование в CMS
  • 41.
    1. Включите сжатиетекста (gzip, deflate)
  • 42.
    1. Включите сжатиетекста (gzip, deflate) 2. Настройте заголовки Expires для статики
  • 43.
    1. Включите сжатиетекста (gzip, deflate) 2. Настройте заголовки Expires для статики 3. Удаляйте неиспользуемые стили и скрипты
  • 44.
    1. Включите сжатиетекста (gzip, deflate) 2. Настройте заголовки Expires для статики 3. Удаляйте неиспользуемые стили и скрипты 4. Минимизируйте изображения Особое внимание!
  • 46.
    PNG, 440 Кб Оригинал JPG,31 Кб Копия Примерный размер на сайте
  • 47.
  • 48.
    Загрузка страницы: 13,3с Начало отображения: 3,9 с Объем данных: 2,5 Мб Запросы к серверу: 146
  • 49.
    12 CSS 20 java-скриптов,в т.ч. _6_ с элементами jquery Оптимизация скриптов и стилей: -0,5 сек. Объединение файлов: -0,6 сек. Отложенная загрузка слайдов: -3…-5 сек. 36 стандартных png-изображений Объединение png в спрайт: -0,6 сек. 3 шрифта без кэширования: -0,3 сек. Перенос изображений на под-домен, н-р img.euroset.ru: -1..2 сек Отказаться от анимированной собаки на сайте: бесценно Заголовок expires для статики: -4 сек. при повторной загрузке Данные: sitespeed.ru, webpagetest.org
  • 50.
    12 CSS 20 java-скриптов,в т.ч. _6_ с элементами jquery Оптимизация скриптов и стилей: -0,5 сек. Объединение файлов: -0,6 сек. Отложенная загрузка слайдов: -3…-5 сек. 36 стандартных png-изображений Объединение png в спрайт: -0,6 сек. 3 шрифта без кэширования: -0,3 сек. Перенос изображений на под-домен, н-р img.euroset.ru: -1..2 сек Отказаться от анимированной собаки на сайте: бесценно Заголовок expires для статики: -4 сек. при повторной загрузке Данные: sitespeed.ru, webpagetest.org
  • 51.
    12 CSS 20 java-скриптов,в т.ч. _6_ с элементами jquery Оптимизация скриптов и стилей: -0,5 сек. Объединение файлов: -0,6 сек. Отложенная загрузка слайдов: -3…-5 сек. 36 стандартных png-изображений Объединение png в спрайт: -0,6 сек. 3 шрифта без кэширования: -0,5 сек. Перенос изображений на под-домен, н-р img.euroset.ru: -1..2 сек Отказаться от анимированной собаки на сайте: бесценно Заголовок expires для статики: -4 сек. при повторной загрузке Данные: sitespeed.ru, webpagetest.org
  • 52.
    12 CSS 20 java-скриптов,в т.ч. _6_ с элементами jquery Оптимизация скриптов и стилей: -0,5 сек. Объединение файлов: -0,6 сек. Загрузка всех слайдов одновременно Отложенная загрузка слайдов: -3…-5 сек. 36 стандартных png-изображений Объединение png в спрайт: -0,6 сек. 3 шрифта без кэширования: -0,5 сек. Перенос изображений на под-домен, н-р img.euroset.ru: -1..2 сек Отказаться от анимированной собаки на сайте: бесценно Заголовок expires для статики: -4 сек. при повторной загрузке Данные: sitespeed.ru, webpagetest.org
  • 53.
    12 CSS 20 java-скриптов,в т.ч. _6_ с элементами jquery Оптимизация скриптов и стилей: -0,5 сек. Объединение файлов: -0,6 сек. Загрузка всех слайдов одновременно Отложенная загрузка слайдов: -3…-5 сек. 36 стандартных png-изображений Объединение png в спрайт: -0,6 сек. 3 шрифта без кэширования: -0,5 сек. Перенос изображений на под-домен, н-р img.euroset.ru: -1..2 сек Отказаться от анимированной собаки на сайте: бесценно Заголовок expires для статики: -4 сек. при повторной загрузке Данные: sitespeed.ru, webpagetest.org
  • 54.
    Время загрузки страницы:13,3 → 7,0 сек. Начало отображения: 3,9 → 2,8 сек. Запросы к серверу: 146 → 105
  • 55.
    Почитать: Исследование факторов, влияющихна скорость загрузки сайтов. Rusonyx (рус) Инициатива Google: Make The Web Faster (eng) Подборка кейсов, публикаций, инфографики (eng) Протокол SPDY (Google) Измерить и оценить: SiteSpeed.ru – сервис для РФ, по-русски + подробный отчет с рекомендациями WebPageTest.org (eng) – зарубежный сервис PageSpeed Insights (eng) – сервис Google Yslow (eng) – плагин для браузеров. Измеряет и дает рекомендации (Yahoo) Уменьшить изображения без потери качества: Smush.it (Yahoo) Использовать в аналитике: About Site Speed (Google Analytics) Поэкспериментировать (админам): mod_pagespeed (apache)
  • 56.
    Юрий Устинов РУСОНИКС Facebook:yuri.ustinov rusonyx Twitter: @sukahitriy @rusonyx Email: u@rsnx.ru info@rusonyx.ru http://rusonyx.ru/ http://SiteSpeed.ru/