SlideShare a Scribd company logo
1 of 49
Download to read offline
Ускоряване на
World Wide Wait
Здравейте
Петър Николов
Peter Nikolow
Можете да ме намерите:
twitter.com/peternikolow
facebook.com/peter.nikolow
linkedin.com/in/peternikolow
plus.google.com/+peternikolow
“We must deliver and render the
above the fold (ATF )content in
under one second, which allows the
user to begin interacting with the
page as soon as possible
https://developers.google.com/speed/docs/insights/mobile
Рендиране на мобилна
страница за 1 секунда
DNS
преобразуване
Рендиране от
браузъра
Сървърна
обработка
HTTP заявка
и отговор
TCP
свързване
200 ms 200 ms200 ms 200 ms 200 ms
600 ms идващи от 3G мрежата които не
може да бъдат оптимизирани
400 ms които може да
бъдат оптимизирани от
Вас
https://developers.google.com/speed/docs/insights/mobile
Да поговорим протоколно?
С протоколите по протоколски
1.
DNS
Пътят към бързия WEB започва със DNS
DNS
▷ премахване low TTL
минимум ден TTL
▷ географски близо до
клиентите
▷ избягване на екзотиките
.ly, .tv, .guru
▷ ненадежни регистратори
DNS ▷ капацитет
DNS
▷ избягване на cname записи
dig +norec +trace cdn.
mobiliodevelopment.com
DNS
▷ резервен план
2.
TCP
Нека да ускорим мрежовия протокол
TCP
▷ създаден преди
40 години - 1974
▷ TCP slow start
○ IW3 -> IW10
TCP
▷ TCP slow start
TCP
▷ TCP efficiency
○ Nagle -> TCP_NODELAY
○ TCP_CORK -> TCP_CORK OFF
▷ Retransmission timeout (RTO)
○ 3 s -> 1s
▷ PRR - proportional rate reduction
▷ TLP - tail lost probe
▷ ER - early retransmit
TCP
▷ TCP handshake
○ 3 way handshake
client server
SYN
ACK
Request
SYN-ACK
Response
TCP
▷ New TCP handshake
○ TCP fast open
○ TFO cookie
client server
SYN +
TFO
cookie
request
ACK
SYN-
ACK+
TFO
cookie
SYN +
TFO +
Request SYN-ACK
Request
sent to
app
ACK
Response
...
3.
HTTP
Проблеми във приложения протокол
HTTP
▷ Версия 1.0 създадена 89/90
▷ Версия 1.1 създадена 95
▷ изцяло текстов
▷ може да се компресира
отговора
▷ създава много връзки към
сървъра
HTTP типове на връзката
Close
връзката се затваря
Keep-alive
постоянна връзка
Pipeline
постоянна връзка на
стероиди
client server
request
response
close
client server client server
HTTP/2
Вече е стандарт
HTTP/2
▷ винаги включени pipeline и
keep-alive
▷ компресира заявката и
хедърите на отговора
▷ вече е двоичен и е само
една връзка
HTTP/2
▷ server hint
▷ server push
▷ приоритизиране на
съдържанието
27%-60%
По-бързо рендира страниците във сравнение
със HTTP/1.1; без криптиране на връзката
40%
По-малко пакети във сравнение със HTTP/1.1
39%-55%
По-бързо рендира страниците във сравнение
със HTTP/1.1 (некриптирано) при криптиране
https://www.chromium.org/spdy/spdy-whitepaper
4.
TLS
Все още ли е причина за забавяне?
“On our production frontend machines (Google),
SSL/TLS accounts for less than 1% of the CPU load,
less than 10 KB of memory per connection and less
than 2% of network overhead. Many people believe
that SSL/TLS takes a lot of CPU time and we hope
the preceding numbers will help to dispel that.
https://www.imperialviolet.org/2010/06/25/overclocking-ssl.html
TLS
▷ SSL е мъртъв! Да живее TLS!
▷ SNI
▷ сертификати само от CA
▷ безплатни сертификати
○ StartSSL
○ Let’s encrypt
TLS
▷ забранете компресията
▷ TLS handshake - ECDH
▷ HSTS
○ HTTP strict transport security
▷ TLS подновяване на сесията
○ session identifiers - стар
○ session tickets - нов
▷ TLS false start
▷ OCSP stapling
QUIC
Quick UDP Internet Connections
Нов приложен протокол който може да
измести TCP
Желязната стража
зад желязната завеса
5.
HTTP server
И обичайните заподозрени за
забавянията
HTTP servers
▷ Apache
▷ nginx
▷ lighthttpd
▷ litespeed
HTTP servers
▷ .htaccess правила
○ използвайте статични правила
във секцията на сървъра
▷ компресия - deflate/gzip
○ компресирайте статичните
файлове
▷ редиректи
○ редирект map file
○ плъгин
▷ сървърно API за езиците
○ CGI, FastCGI, вграден модул
HTTP accelerators
▷ Varnish
▷ nginx reverse proxy
▷ nginx micro cache
PHP
▷ PHP 5.2, 5.3 са EOL
▷ PHP 5.4 тази година EOL
▷ скорост
○ по-новите версии са по-бързи
○ 5.2 -> 5.5 20%-35% по-бързи
▷ памет
○ новите версии имат по-малка
консумация
○ 5.2 -> 5.5 до 50% по-малко
https://wordpress.org/about/stats/
PHP
▷ opcode cache
○ APC - до 5.4
○ Xcache
○ Zend Opcache (PHP 5.5+)
PHP
Наличен
в кеша?
Изпълнение
Обработка Компилиране Запазване
Зарежданеда
не
PHP
▷ бъдещето
○ HHVM
○ PHPNG (PHP 7)
PHP7
Версия 7 се очаква да излезе Юли 2015
като RC и финална Октомври 2015.
Ускорението е около 100%
MySQL
▷ оптимизиране
○ mysqltuner
Ускоряване на World Wide Wait
MySQL
Версия 5.5+ е по-бърза от всички
досегашни.
6.
Wordpress
Защо се бави?
WordPress
▷ преминете на последната
версия
▷ проверете дали темата не ви
бави
○ query monitor
▷ проверете дали не ви бави
плъгин
○ p3 profiler
○ query monitor
WordPress
▷ изключете
pingbacks/trackbacks
▷ проверете за XML-RPC атаки
▷ заключете wp-login.php със
парола
▷ премахнете излишните
плъгини
WordPress
▷ използвайте по-добри
версии на плъгините
▷ инсталирайте кеш
○ HCE - Martin Lazarov
○ WP Super Cache - Samuel Wood
○ W3TC - Frederick Townes
○ проверете редиректите
○ проверете 404 грешките
▷ инсталирайте плъгин за
архивиране
WordPress DB
▷ EAV модел за съхранение
○ entity, attribute, value
▷ премахнете черновите
постове
▷ премахнете спам
коментарите
▷ оптимизирайте таблиците
○ SQL - optimize table
WordPress DB
▷ наблюдавайте внимателно
следните таблици
○ wp_options
○ wp_postmeta
○ wp_commentmeta
▷ направете си тестов сървър
за експерименти
○ DB 1.1Gb -> 215 Mb
Client side
Оптимизация от клиентска страна
Благодаря!
Въпроси?
Можете да ме намерите на:
@peternikolow

More Related Content

Viewers also liked

Училищен курс по програмиране на C# (2013/2014) - Помагало
Училищен курс по програмиране на C# (2013/2014) - ПомагалоУчилищен курс по програмиране на C# (2013/2014) - Помагало
Училищен курс по програмиране на C# (2013/2014) - ПомагалоDAVID Academy
 
Училищен курс по програмиране на C# (2013/2014), занятие №7
Училищен курс по програмиране на C# (2013/2014), занятие №7Училищен курс по програмиране на C# (2013/2014), занятие №7
Училищен курс по програмиране на C# (2013/2014), занятие №7DAVID Academy
 
НВО 7 клас 2014
НВО 7 клас 2014НВО 7 клас 2014
НВО 7 клас 2014Az Vulev
 
Курс по уеб програмиране (2015), занятие №4 - JavaScript (част 2/2)
Курс по уеб програмиране (2015), занятие №4 - JavaScript (част 2/2)Курс по уеб програмиране (2015), занятие №4 - JavaScript (част 2/2)
Курс по уеб програмиране (2015), занятие №4 - JavaScript (част 2/2)DAVID Academy
 
пробен дзи 2013
пробен  дзи 2013пробен  дзи 2013
пробен дзи 2013Velikova31
 
Задачи върху съседни и противоположни ъгли
Задачи върху съседни и противоположни ъглиЗадачи върху съседни и противоположни ъгли
Задачи върху съседни и противоположни ъглиMariq Kokalanova
 
Лица задачи върху готови чертежи
Лица задачи върху готови чертежиЛица задачи върху готови чертежи
Лица задачи върху готови чертежиMariq Kokalanova
 
задачи върху готови чертежи признаци за еднаквост триъгълници
задачи върху готови чертежи   признаци за еднаквост триъгълницизадачи върху готови чертежи   признаци за еднаквост триъгълници
задачи върху готови чертежи признаци за еднаквост триъгълнициMariq Kokalanova
 
Ms office word 2007
Ms office word 2007Ms office word 2007
Ms office word 2007club23
 
MS Excel - логическата функция IF
MS Excel - логическата функция IF MS Excel - логическата функция IF
MS Excel - логическата функция IF nad_and
 
ИТ - MS Excel - Проектиране на таблици
ИТ - MS Excel - Проектиране на таблициИТ - MS Excel - Проектиране на таблици
ИТ - MS Excel - Проектиране на таблициnad_and
 
видове триъгълници според страните урок 67
видове триъгълници според страните урок 67видове триъгълници според страните урок 67
видове триъгълници според страните урок 67Светла Събева
 
ИТ - начален преговор за 7 клас
ИТ - начален преговор за 7 класИТ - начален преговор за 7 клас
ИТ - начален преговор за 7 класnad_and
 
Забавни задачи по математика
Забавни  задачи по  математика Забавни  задачи по  математика
Забавни задачи по математика Павлина Иванова
 

Viewers also liked (17)

Ravnob.triagalnik
Ravnob.triagalnikRavnob.triagalnik
Ravnob.triagalnik
 
Училищен курс по програмиране на C# (2013/2014) - Помагало
Училищен курс по програмиране на C# (2013/2014) - ПомагалоУчилищен курс по програмиране на C# (2013/2014) - Помагало
Училищен курс по програмиране на C# (2013/2014) - Помагало
 
Училищен курс по програмиране на C# (2013/2014), занятие №7
Училищен курс по програмиране на C# (2013/2014), занятие №7Училищен курс по програмиране на C# (2013/2014), занятие №7
Училищен курс по програмиране на C# (2013/2014), занятие №7
 
НВО 7 клас 2014
НВО 7 клас 2014НВО 7 клас 2014
НВО 7 клас 2014
 
Курс по уеб програмиране (2015), занятие №4 - JavaScript (част 2/2)
Курс по уеб програмиране (2015), занятие №4 - JavaScript (част 2/2)Курс по уеб програмиране (2015), занятие №4 - JavaScript (част 2/2)
Курс по уеб програмиране (2015), занятие №4 - JavaScript (част 2/2)
 
пробен дзи 2013
пробен  дзи 2013пробен  дзи 2013
пробен дзи 2013
 
Задачи върху съседни и противоположни ъгли
Задачи върху съседни и противоположни ъглиЗадачи върху съседни и противоположни ъгли
Задачи върху съседни и противоположни ъгли
 
Лица задачи върху готови чертежи
Лица задачи върху готови чертежиЛица задачи върху готови чертежи
Лица задачи върху готови чертежи
 
Mat
MatMat
Mat
 
задачи върху готови чертежи признаци за еднаквост триъгълници
задачи върху готови чертежи   признаци за еднаквост триъгълницизадачи върху готови чертежи   признаци за еднаквост триъгълници
задачи върху готови чертежи признаци за еднаквост триъгълници
 
Ms office word 2007
Ms office word 2007Ms office word 2007
Ms office word 2007
 
MS Excel - логическата функция IF
MS Excel - логическата функция IF MS Excel - логическата функция IF
MS Excel - логическата функция IF
 
Zabavna matematika(2)
Zabavna matematika(2)Zabavna matematika(2)
Zabavna matematika(2)
 
ИТ - MS Excel - Проектиране на таблици
ИТ - MS Excel - Проектиране на таблициИТ - MS Excel - Проектиране на таблици
ИТ - MS Excel - Проектиране на таблици
 
видове триъгълници според страните урок 67
видове триъгълници според страните урок 67видове триъгълници според страните урок 67
видове триъгълници според страните урок 67
 
ИТ - начален преговор за 7 клас
ИТ - начален преговор за 7 класИТ - начален преговор за 7 клас
ИТ - начален преговор за 7 клас
 
Забавни задачи по математика
Забавни  задачи по  математика Забавни  задачи по  математика
Забавни задачи по математика
 

Similar to Ускоряване на World Wide Wait

SEO курс, лекция 11 - От заявка до рендиране
SEO курс, лекция 11 - От заявка до рендиранеSEO курс, лекция 11 - От заявка до рендиране
SEO курс, лекция 11 - От заявка до рендиранеLily Grozeva
 
Cloud hosting for e-shops
Cloud hosting for e-shopsCloud hosting for e-shops
Cloud hosting for e-shopsHost.bg
 
Php security
Php securityPhp security
Php securityphristov
 
Web and WS based Embedded Systems
Web and WS based Embedded SystemsWeb and WS based Embedded Systems
Web and WS based Embedded SystemsNikolay Kakanakov
 
The better PHP API (BG)
The better PHP API (BG)The better PHP API (BG)
The better PHP API (BG)boen_robot
 
Lotus Domino Admin Blast: LCTY 2011
Lotus Domino Admin Blast: LCTY 2011Lotus Domino Admin Blast: LCTY 2011
Lotus Domino Admin Blast: LCTY 2011IBS Bulgaria
 
OnPage SEO
OnPage SEOOnPage SEO
OnPage SEONetpeak
 
Open Vpn – Poor Man’S Vpn Solution
Open Vpn – Poor Man’S Vpn SolutionOpen Vpn – Poor Man’S Vpn Solution
Open Vpn – Poor Man’S Vpn Solutionguest782598d5
 
Конференции с Jitsi Meet
Конференции с Jitsi MeetКонференции с Jitsi Meet
Конференции с Jitsi MeetYasen Pramatarov
 
Курс по информационни технологии (2013) - 5. HTTP & Web Services
Курс по информационни технологии (2013) - 5. HTTP & Web ServicesКурс по информационни технологии (2013) - 5. HTTP & Web Services
Курс по информационни технологии (2013) - 5. HTTP & Web ServicesDAVID Academy
 
Конференции с Jitsi Meet
Конференции с Jitsi MeetКонференции с Jitsi Meet
Конференции с Jitsi MeetYasen Pramatarov
 
Linux обновления с RAUC и Docker
Linux обновления с RAUC и DockerLinux обновления с RAUC и Docker
Linux обновления с RAUC и DockerLeon Anavi
 

Similar to Ускоряване на World Wide Wait (20)

SEO курс, лекция 11 - От заявка до рендиране
SEO курс, лекция 11 - От заявка до рендиранеSEO курс, лекция 11 - От заявка до рендиране
SEO курс, лекция 11 - От заявка до рендиране
 
Cloud hosting for e-shops
Cloud hosting for e-shopsCloud hosting for e-shops
Cloud hosting for e-shops
 
Php security
Php securityPhp security
Php security
 
Web and WS based Embedded Systems
Web and WS based Embedded SystemsWeb and WS based Embedded Systems
Web and WS based Embedded Systems
 
B1 t1 php_basics
B1 t1 php_basicsB1 t1 php_basics
B1 t1 php_basics
 
B1 t1 php_basics
B1 t1 php_basicsB1 t1 php_basics
B1 t1 php_basics
 
The better PHP API (BG)
The better PHP API (BG)The better PHP API (BG)
The better PHP API (BG)
 
Lotus Domino Admin Blast: LCTY 2011
Lotus Domino Admin Blast: LCTY 2011Lotus Domino Admin Blast: LCTY 2011
Lotus Domino Admin Blast: LCTY 2011
 
OnPage SEO
OnPage SEOOnPage SEO
OnPage SEO
 
OnPage SEO
OnPage SEOOnPage SEO
OnPage SEO
 
OpenVPN
OpenVPNOpenVPN
OpenVPN
 
Open Vpn – Poor Man’S Vpn Solution
Open Vpn – Poor Man’S Vpn SolutionOpen Vpn – Poor Man’S Vpn Solution
Open Vpn – Poor Man’S Vpn Solution
 
Конференции с Jitsi Meet
Конференции с Jitsi MeetКонференции с Jitsi Meet
Конференции с Jitsi Meet
 
Курс по информационни технологии (2013) - 5. HTTP & Web Services
Курс по информационни технологии (2013) - 5. HTTP & Web ServicesКурс по информационни технологии (2013) - 5. HTTP & Web Services
Курс по информационни технологии (2013) - 5. HTTP & Web Services
 
PHP Introduction
PHP IntroductionPHP Introduction
PHP Introduction
 
Embedded Gnu
Embedded GnuEmbedded Gnu
Embedded Gnu
 
Конференции с Jitsi Meet
Конференции с Jitsi MeetКонференции с Jitsi Meet
Конференции с Jitsi Meet
 
Linux обновления с RAUC и Docker
Linux обновления с RAUC и DockerLinux обновления с RAUC и Docker
Linux обновления с RAUC и Docker
 
B4 t4 include_files
B4 t4 include_filesB4 t4 include_files
B4 t4 include_files
 
B4 t4 include_files
B4 t4 include_filesB4 t4 include_files
B4 t4 include_files
 

More from SEOM

Онлайн решаване на потребителски спорове
Онлайн решаване на потребителски споровеОнлайн решаване на потребителски спорове
Онлайн решаване на потребителски споровеSEOM
 
Seo conference 2015 google my business & for business
Seo conference 2015 google my business & for businessSeo conference 2015 google my business & for business
Seo conference 2015 google my business & for businessSEOM
 
Seo copywriting-seo-conference-2015
Seo copywriting-seo-conference-2015Seo copywriting-seo-conference-2015
Seo copywriting-seo-conference-2015SEOM
 
Колаген - Натурален колаген от Inventia http://collagen.club
Колаген - Натурален колаген от Inventia http://collagen.clubКолаген - Натурален колаген от Inventia http://collagen.club
Колаген - Натурален колаген от Inventia http://collagen.clubSEOM
 
Gemius knowledge south easteurope
Gemius knowledge south easteuropeGemius knowledge south easteurope
Gemius knowledge south easteuropeSEOM
 
IAB Bulgaria Digital passport 2013
IAB Bulgaria Digital passport 2013IAB Bulgaria Digital passport 2013
IAB Bulgaria Digital passport 2013SEOM
 
Mariya Moeva SEO conference Sofia 2014
Mariya Moeva SEO conference Sofia 2014Mariya Moeva SEO conference Sofia 2014
Mariya Moeva SEO conference Sofia 2014SEOM
 
Yandex at a Glance Vladimir Gorovoy
Yandex at a Glance Vladimir Gorovoy Yandex at a Glance Vladimir Gorovoy
Yandex at a Glance Vladimir Gorovoy SEOM
 
Практически съвети за AdSense оптимизация - Огнян Попов
Практически съвети за AdSense оптимизация - Огнян Попов Практически съвети за AdSense оптимизация - Огнян Попов
Практически съвети за AdSense оптимизация - Огнян Попов SEOM
 
SEO конференция 2014
SEO конференция 2014SEO конференция 2014
SEO конференция 2014SEOM
 
Бъдещето на търсенето в туризма
Бъдещето на търсенето в туризмаБъдещето на търсенето в туризма
Бъдещето на търсенето в туризмаSEOM
 
Alexa metrcs SEOM.bg
Alexa metrcs SEOM.bgAlexa metrcs SEOM.bg
Alexa metrcs SEOM.bgSEOM
 
Илияна Йотова BSP.bg linkbuilding
Илияна Йотова BSP.bg linkbuildingИлияна Йотова BSP.bg linkbuilding
Илияна Йотова BSP.bg linkbuildingSEOM
 
State of the Media Report 2014
State of the Media Report 2014State of the Media Report 2014
State of the Media Report 2014SEOM
 
Белая книга жизни. Белый проект
Белая книга жизни. Белый проектБелая книга жизни. Белый проект
Белая книга жизни. Белый проектSEOM
 
Китайски календар за 2014 година
Китайски календар за 2014 годинаКитайски календар за 2014 година
Китайски календар за 2014 годинаSEOM
 
Hooponopono - Абсолютната неограниченост
Hooponopono - Абсолютната неограниченостHooponopono - Абсолютната неограниченост
Hooponopono - Абсолютната неограниченостSEOM
 
The future of search and seo
The future of search and seoThe future of search and seo
The future of search and seoSEOM
 
Google Penalties
Google PenaltiesGoogle Penalties
Google PenaltiesSEOM
 
Creating valuable content
Creating valuable contentCreating valuable content
Creating valuable contentSEOM
 

More from SEOM (20)

Онлайн решаване на потребителски спорове
Онлайн решаване на потребителски споровеОнлайн решаване на потребителски спорове
Онлайн решаване на потребителски спорове
 
Seo conference 2015 google my business & for business
Seo conference 2015 google my business & for businessSeo conference 2015 google my business & for business
Seo conference 2015 google my business & for business
 
Seo copywriting-seo-conference-2015
Seo copywriting-seo-conference-2015Seo copywriting-seo-conference-2015
Seo copywriting-seo-conference-2015
 
Колаген - Натурален колаген от Inventia http://collagen.club
Колаген - Натурален колаген от Inventia http://collagen.clubКолаген - Натурален колаген от Inventia http://collagen.club
Колаген - Натурален колаген от Inventia http://collagen.club
 
Gemius knowledge south easteurope
Gemius knowledge south easteuropeGemius knowledge south easteurope
Gemius knowledge south easteurope
 
IAB Bulgaria Digital passport 2013
IAB Bulgaria Digital passport 2013IAB Bulgaria Digital passport 2013
IAB Bulgaria Digital passport 2013
 
Mariya Moeva SEO conference Sofia 2014
Mariya Moeva SEO conference Sofia 2014Mariya Moeva SEO conference Sofia 2014
Mariya Moeva SEO conference Sofia 2014
 
Yandex at a Glance Vladimir Gorovoy
Yandex at a Glance Vladimir Gorovoy Yandex at a Glance Vladimir Gorovoy
Yandex at a Glance Vladimir Gorovoy
 
Практически съвети за AdSense оптимизация - Огнян Попов
Практически съвети за AdSense оптимизация - Огнян Попов Практически съвети за AdSense оптимизация - Огнян Попов
Практически съвети за AdSense оптимизация - Огнян Попов
 
SEO конференция 2014
SEO конференция 2014SEO конференция 2014
SEO конференция 2014
 
Бъдещето на търсенето в туризма
Бъдещето на търсенето в туризмаБъдещето на търсенето в туризма
Бъдещето на търсенето в туризма
 
Alexa metrcs SEOM.bg
Alexa metrcs SEOM.bgAlexa metrcs SEOM.bg
Alexa metrcs SEOM.bg
 
Илияна Йотова BSP.bg linkbuilding
Илияна Йотова BSP.bg linkbuildingИлияна Йотова BSP.bg linkbuilding
Илияна Йотова BSP.bg linkbuilding
 
State of the Media Report 2014
State of the Media Report 2014State of the Media Report 2014
State of the Media Report 2014
 
Белая книга жизни. Белый проект
Белая книга жизни. Белый проектБелая книга жизни. Белый проект
Белая книга жизни. Белый проект
 
Китайски календар за 2014 година
Китайски календар за 2014 годинаКитайски календар за 2014 година
Китайски календар за 2014 година
 
Hooponopono - Абсолютната неограниченост
Hooponopono - Абсолютната неограниченостHooponopono - Абсолютната неограниченост
Hooponopono - Абсолютната неограниченост
 
The future of search and seo
The future of search and seoThe future of search and seo
The future of search and seo
 
Google Penalties
Google PenaltiesGoogle Penalties
Google Penalties
 
Creating valuable content
Creating valuable contentCreating valuable content
Creating valuable content
 

Ускоряване на World Wide Wait