SlideShare a Scribd company logo
1 of 39
ПРОМЫШЛЕННОЕ
УСКОРЕНИЕ
САЙТОВ
Мациевский Николай – владелец
www.webogroup.com, айри.рф
С 2007 года ускорено 5 836 сайтов
Посещаемость клиентских сайтов: 60М+ в день
Среднее ускорение сайта: 1,6 раза
2 книги, 16 наград (Microsoft MVP – 6 лет подряд,
Стартап года – 2 раза, WebReady, ROI, Окно в
Европу, YEES, Эврика, «Старт», CERPrize,
VCDay)
МЕТОДИКИ
ОПТИМИЗАЦИИ
ФРОНТЕНДА
W/Mustaches
Google PageSpeed Insights
WebPageTest.org
Google PageSpeed Module
CDN = Content Delivery Network
Правильное ускорение
Отображение сайта за 1 секунду
МОНИТОРИНГ
КЛИЕНТСКОЙ
ПРОИЗВОДИТЕЛЬНОСТИ
Google Analytics
Битрикс
NewRelic
mPulse
Айри.рф
Performance Timing API
Resource Timing API
Профилирование задержек
ВНЕДРЕНИЕ
УСКОРЕНИЯ
Выбор KPI по скорости
Время ответа сервера
Время отрисовки
Время полной загрузки – 50%
Процент загрузок до 4 секунд
KPI скорости сайта
“Бюджет” на ускорение
60% - на проверку гипотез ускорения
согласно ожидаемому эффекту
20% - на тестирование и анализ
20% - на внедрение лучших методов
Ускорение в виде “сборки”
Правила сборки файлов
Контроль клиентского кэширования
Контроль целостности серверного кэша
Тестирование ускоренной “сборки” сайта
Ускорение “на лету”
mod_pagespeed
200+ настроек
+50-150мс времени ответа сервера
eval() для JavaScript
нестабильная работа при нагрузке
собственная инвалидация кэша
Быстрое ускорение “на лету”
nginx + sub, subs, replace, gzip_static, brotli
gzip, zopfli, brotli, Closure Compiler, YUI
Compressor, HTML Compressor
optipng, pngcrush, pngout, pngwolf, gifsicle,
giflossy, convert, mozjpeg, subsampling,
webp, exiftool, zopflipng
scour, svgo, subset, smpdf, gs, ...
Ускорение со скоростью gzip
Отложенная загрузка
Параллельная загрузка
Оптимизация изображений
ПРОФИЛИРОВАНИЕ
КЛИЕНТСКОЙ
ПРОИЗВОДИТЕЛЬНОСТИ
Внедрение CDN
Мобильная производительность
Chrome: JavaScript CPU Profiler
РЕЗЮМЕ
Измерение производительности
Подключение (connect)
Сервер (server wait)
Канал (download)
Отрисовка (DOMready)
*Начало взаимодействия (interaction)
Загрузка (onload)
Правильная методика
Нагрузка
Частота
изменений
Ручная обработка
Автоматизация
Динамическое
решение
Статическая
сборка
Комплексный подход
P = cПланировать
D = cДелать
S = соСчитать
A = проАнализировать
Спасибо!
Мациевский Николай
n@airee.ru
+7 926 7281964
Промо-код на 2500 рублей в Айри.рф
hl16

More Related Content

What's hot

MongoDB первые впечатления
MongoDB первые впечатленияMongoDB первые впечатления
MongoDB первые впечатления
fudz1k
 
Дмитрий Дегтярев, "Хабикаса"
Дмитрий Дегтярев, "Хабикаса"Дмитрий Дегтярев, "Хабикаса"
Дмитрий Дегтярев, "Хабикаса"
Ontico
 
MongoDB. Области применения, преимущества и узкие места, тонкости использован...
MongoDB. Области применения, преимущества и узкие места, тонкости использован...MongoDB. Области применения, преимущества и узкие места, тонкости использован...
MongoDB. Области применения, преимущества и узкие места, тонкости использован...
phpdevby
 
Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)
Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)
Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)
Dmitry Degtyarev
 
«Система развёртывания многокомпонентного сервиса» — Алексей Салов, YaC 2013
«Система развёртывания многокомпонентного сервиса» — Алексей Салов, YaC 2013«Система развёртывания многокомпонентного сервиса» — Алексей Салов, YaC 2013
«Система развёртывания многокомпонентного сервиса» — Алексей Салов, YaC 2013
2ГИС Технологии
 
Электронная коммерция: от Hadoop к Spark Scala
Электронная коммерция: от Hadoop к Spark ScalaЭлектронная коммерция: от Hadoop к Spark Scala
Электронная коммерция: от Hadoop к Spark Scala
Roman Zykov
 
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
Как мы строили аналитическую платформу на несколько миллиардов событии в месяцКак мы строили аналитическую платформу на несколько миллиардов событии в месяц
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
Mikhail Tabunov
 

What's hot (19)

MongoDB первые впечатления
MongoDB первые впечатленияMongoDB первые впечатления
MongoDB первые впечатления
 
Где сегодня использовать ElasticSearch
Где сегодня использовать ElasticSearchГде сегодня использовать ElasticSearch
Где сегодня использовать ElasticSearch
 
No sql.mongodb scaling
No sql.mongodb scalingNo sql.mongodb scaling
No sql.mongodb scaling
 
Построение системы аналитики
Построение системы аналитикиПостроение системы аналитики
Построение системы аналитики
 
MongoDB. Как готовить, с чем едят?
MongoDB. Как готовить, с чем едят?MongoDB. Как готовить, с чем едят?
MongoDB. Как готовить, с чем едят?
 
Простая и дешёвая бизнес-аналитика на базе Google BigQuery / Алексей Паршуков...
Простая и дешёвая бизнес-аналитика на базе Google BigQuery / Алексей Паршуков...Простая и дешёвая бизнес-аналитика на базе Google BigQuery / Алексей Паршуков...
Простая и дешёвая бизнес-аналитика на базе Google BigQuery / Алексей Паршуков...
 
Дмитрий Дегтярев, "Хабикаса"
Дмитрий Дегтярев, "Хабикаса"Дмитрий Дегтярев, "Хабикаса"
Дмитрий Дегтярев, "Хабикаса"
 
MongoDB. Области применения, преимущества и узкие места, тонкости использован...
MongoDB. Области применения, преимущества и узкие места, тонкости использован...MongoDB. Области применения, преимущества и узкие места, тонкости использован...
MongoDB. Области применения, преимущества и узкие места, тонкости использован...
 
Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)
Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)
Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)
 
Бигдата — как добывать золото из данных / Александр Сербул (1С-Битрикс)
Бигдата — как добывать золото из данных / Александр Сербул (1С-Битрикс)Бигдата — как добывать золото из данных / Александр Сербул (1С-Битрикс)
Бигдата — как добывать золото из данных / Александр Сербул (1С-Битрикс)
 
«Система развёртывания многокомпонентного сервиса» — Алексей Салов, YaC 2013
«Система развёртывания многокомпонентного сервиса» — Алексей Салов, YaC 2013«Система развёртывания многокомпонентного сервиса» — Алексей Салов, YaC 2013
«Система развёртывания многокомпонентного сервиса» — Алексей Салов, YaC 2013
 
Как устроено API в AppMetrica
Как устроено API в AppMetricaКак устроено API в AppMetrica
Как устроено API в AppMetrica
 
Разработка аналитической системы для высоконагруженного медиа, Олег Новиков, ...
Разработка аналитической системы для высоконагруженного медиа, Олег Новиков, ...Разработка аналитической системы для высоконагруженного медиа, Олег Новиков, ...
Разработка аналитической системы для высоконагруженного медиа, Олег Новиков, ...
 
Выбор NoSQL базы данных для вашего проекта: "Не в свои сани не садись"
Выбор NoSQL базы данных для вашего проекта: "Не в свои сани не садись"Выбор NoSQL базы данных для вашего проекта: "Не в свои сани не садись"
Выбор NoSQL базы данных для вашего проекта: "Не в свои сани не садись"
 
Электронная коммерция: от Hadoop к Spark Scala
Электронная коммерция: от Hadoop к Spark ScalaЭлектронная коммерция: от Hadoop к Spark Scala
Электронная коммерция: от Hadoop к Spark Scala
 
MongoDB basics in Russian
MongoDB basics in RussianMongoDB basics in Russian
MongoDB basics in Russian
 
NoBigData - потоковая система аналитики clientside производительности, Сергей...
NoBigData - потоковая система аналитики clientside производительности, Сергей...NoBigData - потоковая система аналитики clientside производительности, Сергей...
NoBigData - потоковая система аналитики clientside производительности, Сергей...
 
Cергей Коржнев, 2ГИС
Cергей Коржнев, 2ГИСCергей Коржнев, 2ГИС
Cергей Коржнев, 2ГИС
 
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
Как мы строили аналитическую платформу на несколько миллиардов событии в месяцКак мы строили аналитическую платформу на несколько миллиардов событии в месяц
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
 

Similar to Промышленное ускорение сайтов / Николай Мациевский (Айри.рф)

Евгений Храмов: WebEffector presentation
Евгений Храмов: WebEffector presentationЕвгений Храмов: WebEffector presentation
Евгений Храмов: WebEffector presentation
Евгений Храмов
 
5. управление поисковым продвижением сайта чуркин павел
5. управление поисковым продвижением сайта чуркин павел5. управление поисковым продвижением сайта чуркин павел
5. управление поисковым продвижением сайта чуркин павел
zaharec
 
управление поисковым продвижением сайта
управление поисковым продвижением сайтауправление поисковым продвижением сайта
управление поисковым продвижением сайта
zaharec
 
Повышение эффективности сайта средствами веб-аналитики. Игорь Остюченко
Повышение эффективности сайта средствами веб-аналитики. Игорь ОстюченкоПовышение эффективности сайта средствами веб-аналитики. Игорь Остюченко
Повышение эффективности сайта средствами веб-аналитики. Игорь Остюченко
BranchMarketing
 
Валентин Домбровский, dombrovsky.me (Москва) Независимый консультант по воп...
	 Валентин Домбровский, dombrovsky.me (Москва) Независимый консультант по воп...	 Валентин Домбровский, dombrovsky.me (Москва) Независимый консультант по воп...
Валентин Домбровский, dombrovsky.me (Москва) Независимый консультант по воп...
web2win
 
«Стратегия интернет-маркетинга 2012» - Продвижение в поисковых системах
«Стратегия интернет-маркетинга 2012» - Продвижение в поисковых системах«Стратегия интернет-маркетинга 2012» - Продвижение в поисковых системах
«Стратегия интернет-маркетинга 2012» - Продвижение в поисковых системах
Игорь Кириченко
 
Al трафик + seo
Al трафик + seoAl трафик + seo
Al трафик + seo
artliberty
 
Поисковая оптимизация. Как оказаться на 1 строчке?
Поисковая оптимизация.  Как оказаться на 1 строчке?Поисковая оптимизация.  Как оказаться на 1 строчке?
Поисковая оптимизация. Как оказаться на 1 строчке?
Roman Pospelov
 

Similar to Промышленное ускорение сайтов / Николай Мациевский (Айри.рф) (20)

Евгений Храмов: WebEffector presentation
Евгений Храмов: WebEffector presentationЕвгений Храмов: WebEffector presentation
Евгений Храмов: WebEffector presentation
 
Web analytics
Web analyticsWeb analytics
Web analytics
 
коммерческое предложение для Vn35.ru
коммерческое предложение для Vn35.ruкоммерческое предложение для Vn35.ru
коммерческое предложение для Vn35.ru
 
5. управление поисковым продвижением сайта чуркин павел
5. управление поисковым продвижением сайта чуркин павел5. управление поисковым продвижением сайта чуркин павел
5. управление поисковым продвижением сайта чуркин павел
 
Использование инструментов веб-аналитики для повышения эффективности рекламны...
Использование инструментов веб-аналитики для повышения эффективности рекламны...Использование инструментов веб-аналитики для повышения эффективности рекламны...
Использование инструментов веб-аналитики для повышения эффективности рекламны...
 
управление поисковым продвижением сайта
управление поисковым продвижением сайтауправление поисковым продвижением сайта
управление поисковым продвижением сайта
 
Повышение эффективности сайта средствами веб-аналитики. Игорь Остюченко
Повышение эффективности сайта средствами веб-аналитики. Игорь ОстюченкоПовышение эффективности сайта средствами веб-аналитики. Игорь Остюченко
Повышение эффективности сайта средствами веб-аналитики. Игорь Остюченко
 
1 2 2_1_c-bitrix_kuleshov
1 2 2_1_c-bitrix_kuleshov1 2 2_1_c-bitrix_kuleshov
1 2 2_1_c-bitrix_kuleshov
 
Яндекс.Метрика и факторы для SEO-специалиста (Cybermarketing-2015). Севальнев...
Яндекс.Метрика и факторы для SEO-специалиста (Cybermarketing-2015). Севальнев...Яндекс.Метрика и факторы для SEO-специалиста (Cybermarketing-2015). Севальнев...
Яндекс.Метрика и факторы для SEO-специалиста (Cybermarketing-2015). Севальнев...
 
Конференция Cybermarketing 2015: Яндекс.Метрика или как «большой брат» следит...
Конференция Cybermarketing 2015: Яндекс.Метрика или как «большой брат» следит...Конференция Cybermarketing 2015: Яндекс.Метрика или как «большой брат» следит...
Конференция Cybermarketing 2015: Яндекс.Метрика или как «большой брат» следит...
 
Неизбежный рост конверсии: как быстро увеличить продажи
Неизбежный рост конверсии: как быстро увеличить продажиНеизбежный рост конверсии: как быстро увеличить продажи
Неизбежный рост конверсии: как быстро увеличить продажи
 
Валентин Домбровский, dombrovsky.me (Москва) Независимый консультант по воп...
	 Валентин Домбровский, dombrovsky.me (Москва) Независимый консультант по воп...	 Валентин Домбровский, dombrovsky.me (Москва) Независимый консультант по воп...
Валентин Домбровский, dombrovsky.me (Москва) Независимый консультант по воп...
 
Е.Трепачева. Seo. Контент. Контекст. Как продвинуться, если в ТОПе Онлайнер
Е.Трепачева. Seo. Контент. Контекст. Как продвинуться, если в ТОПе ОнлайнерЕ.Трепачева. Seo. Контент. Контекст. Как продвинуться, если в ТОПе Онлайнер
Е.Трепачева. Seo. Контент. Контекст. Как продвинуться, если в ТОПе Онлайнер
 
Как скорость и доступность сайта влияет на SEO
Как скорость и доступность сайта влияет на SEOКак скорость и доступность сайта влияет на SEO
Как скорость и доступность сайта влияет на SEO
 
Продвижение в поисковых системах
Продвижение в поисковых системахПродвижение в поисковых системах
Продвижение в поисковых системах
 
«Стратегия интернет-маркетинга 2012» - Продвижение в поисковых системах
«Стратегия интернет-маркетинга 2012» - Продвижение в поисковых системах«Стратегия интернет-маркетинга 2012» - Продвижение в поисковых системах
«Стратегия интернет-маркетинга 2012» - Продвижение в поисковых системах
 
Complex
ComplexComplex
Complex
 
Al трафик + seo
Al трафик + seoAl трафик + seo
Al трафик + seo
 
Продвижение сайта - TopPlan
Продвижение сайта - TopPlanПродвижение сайта - TopPlan
Продвижение сайта - TopPlan
 
Поисковая оптимизация. Как оказаться на 1 строчке?
Поисковая оптимизация.  Как оказаться на 1 строчке?Поисковая оптимизация.  Как оказаться на 1 строчке?
Поисковая оптимизация. Как оказаться на 1 строчке?
 

More from Ontico

Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Ontico
 

More from Ontico (20)

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
 

Промышленное ускорение сайтов / Николай Мациевский (Айри.рф)

Editor's Notes

  1. 4
  2. 5
  3. 6
  4. 7
  5. 8
  6. 9
  7. 10
  8. 12
  9. 13
  10. 14
  11. 15
  12. 16
  13. 17
  14. 18
  15. 19
  16. 21
  17. 22
  18. 23
  19. 24
  20. 25
  21. 26
  22. 27
  23. 28
  24. 29
  25. 30
  26. 32
  27. 33
  28. 34
  29. 36
  30. 37
  31. 38
  32. 39