latency, Сергей Высоцкий

Post on 15-Jun-2015

449 Views

Category:

Technology

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

Фраза "ваш сайт тормозит" является эквивалентом бага "ваше приложение не работает". Современный интернет уже давно сложнее этих слов и для того чтобы формализовать эту короткую фразу нам потребуется немного посмотреть на то, как работает веб. Начнем с магических пони, приносящих веб-странички, и закончим простыми метриками и разбором HTTP архивов. Ничего сложного не будет - просто ряд ответов, которые крайне редко можно услышать на собеседованиях.

TRANSCRIPT

Latency

Медленный сайт-50 к лояльности-20 к надежности

Почему интернеты такие медленные?

Как работают интернеты?

Клиент СерверИнтернет

maps.2gis.ru

Клиент СерверИнтернет

maps.2gis.ru

DNS

Клиент СерверИнтернет

maps.2gis.ru

DNSDNS

lookup

Клиент СерверИнтернет

maps.2gis.ru

DNSDNS

lookup

Клиент Сервер

maps.2gis.ru

IP IP

роутинг

R

RR

R

R

Клиент Сервер

maps.2gis.ru

IP IP

TCP Сессия

R

RR

R

RИнтернет

Клиент Сервер

maps.2gis.ru

IP IP

TCP Сессия

R

RR

R

RИнтернет

Tcp congestion window

написали письмо отнесли на почту

Вы(отправитель)

Они(получатель)

это

мое

клевое

письмо

Вы(отправитель)

Они(получатель)

это

мое

клевое

письмо

Вы(отправитель)

Они(получатель)

Вы(отправитель)

Они(получатель)

это

мое

клевое

письмо

Вы(отправитель)

Они(получатель)

это

мое

клевое

письмо

Вы(отправитель)

Они(получатель)

это

мое

клевое

письмо

4

Вы(отправитель)

Они(получатель)

это

мое

клевое

письмо

Вы(отправитель)

Они(получатель)

это

мое

2

письмо

Вы(отправитель)

Они(получатель)

это

мое

4

письмо

Вы(отправитель)

Они(получатель)

это

мое

4

письмо

Где!?!

это мое письмо

421

это мое письмо

421

Перешли пожалуйста #3

это мое письмо

421

Перешли пожалуйста #3

клевое

3

Да, конечно. Вот оно

Вы(клиент)

они(сервер)

Tcp сессия

IP роутинг

1 2 3 4

IP IPIPIP

Клиент Сервер

maps.2gis.ru

IP IP

R

RR

R

RИнтернет

Клиент Сервер

maps.2gis.ru

IP IP

R

RR

R

RИнтернет

TCP TCP

Клиент Сервер

maps.2gis.ru

IP IP

R

RR

R

RИнтернет

TCP

SSL

TCP

SSL

Клиент Сервер

maps.2gis.ru

IP IP

HTTP „стэк“

R

RR

R

RИнтернет

TCP

SSL

HTTP

TCP

SSL

HTTP

Клиент Сервер

Клиент Сервер

TCP SYN („надо поговорить“)

TCP SYN ACK(„ОК, согласен“)

TCP ACK(„ОК, мы говорим“)

Клиент Сервер

TCP SYN („надо поговорить“)

TCP SYN ACK(„ОК, согласен“)

TCP ACK(„ОК, мы говорим“)

SSL(„нас могут подслушивать“)

SSL(„держи ключик“)

Клиент Сервер

TCP SYN („надо поговорить“)

TCP SYN ACK(„ОК, согласен“)

TCP ACK(„ОК, мы говорим“)

SSL(„нас могут подслушивать“)

SSL(„держи ключик“)

HTTP GET / („дай мне свою домашнюю страничку“)

HTTP 200 („Да, конечно!“)

index.html („Вот она“)

[img js css] („и это тоже держи“)

немногозадумался

пиу-пиу-пиуНеистово рендерит

Клиент Сервер

TCP SYN („надо поговорить“)

TCP SYN ACK(„ОК, согласен“)

TCP ACK(„ОК, мы говорим“)

SSL(„нас могут подслушивать“)

SSL(„держи ключик“)

HTTP GET / („дай мне свою домашнюю страничку“)

HTTP 200 („Да, конечно!“)

index.html („Вот она“)

[img js css] („и это тоже держи“)

TCP FIN („спасибо, пока!“)

TCP FIN ACK („незачто! Приходите еще!“)

немногозадумался

пиу-пиу-пиуНеистово рендерит

Index.html

Script.js

Style.css

Button.gif

Photo.jpg

Background.gif

DNS lookup

Background.gif

простой на хосте Время доставки

Page load это сложно" "AjaxCDN

Document vs. EventМобилки

Third-partyПлагинчики и эмбеды

maps.2gis.ru в chrome116 запросов

62 соединения25 доменов

браузер Сервер

аналитика

тайлики

сайтик

Сервер

Сервер

браузер Сервер

аналитика

тайлики

сайтик

Сервер

Сервер

Вашу мать...

Что важно?Когда сайтом можно будет

пользоваться так, как задумали дизайнеры?

Мы контролируем

Latency на сервереНагрузочные тесты

Пассивный мониторинг

сеть с известными параметрами

Активный мониторинг

Людям не нравится

Рендеринг страницыHTTP Waterfall хотя бы по

праздникам

Суммарное latencyСнимать измерения с разных точек

Пользовательское окружениеРазные браузеры

Разное железо

THE ENDTHE END

top related