Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Latency

Sergey Vysotskiy
February 19, 2013
160

 Latency

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

Sergey Vysotskiy

February 19, 2013
Tweet

Transcript

  1. Клиент Сервер maps.2gis.ru IP IP HTTP „стэк“ R R R

    R R Интернет TCP SSL HTTP TCP SSL HTTP
  2. Клиент Сервер TCP SYN („надо поговорить“) TCP SYN ACK(„ОК, согласен“)

    TCP ACK(„ОК, мы говорим“) SSL(„нас могут подслушивать“) SSL(„держи ключик“)
  3. Клиент Сервер TCP SYN („надо поговорить“) TCP SYN ACK(„ОК, согласен“)

    TCP ACK(„ОК, мы говорим“) SSL(„нас могут подслушивать“) SSL(„держи ключик“) HTTP GET / („дай мне свою домашнюю страничку“) HTTP 200 („Да, конечно!“) index.html („Вот она“) [img js css] („и это тоже держи“) немного задумался пиу-пиу-пиу Неистово рендерит
  4. Клиент Сервер TCP SYN („надо поговорить“) TCP SYN ACK(„ОК, согласен“)

    TCP ACK(„ОК, мы говорим“) SSL(„нас могут подслушивать“) SSL(„держи ключик“) HTTP GET / („дай мне свою домашнюю страничку“) HTTP 200 („Да, конечно!“) index.html („Вот она“) [img js css] („и это тоже держи“) TCP FIN („спасибо, пока!“) TCP FIN ACK („незачто! Приходите еще!“) немного задумался пиу-пиу-пиу Неистово рендерит
  5. Page load это сложно " " Ajax CDN Document vs.

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