Как стать автором
Обновить

Баг на миллион долларов

Время на прочтение1 мин
Количество просмотров19K
Голландский программист Жак Матти (Jacques Mattheij) — владелец сайта ww.com и один из первых людей, кто организовал прямые трансляции с веб-камер в интернете. Он обращает внимание на баг в HTTP, благодаря которому можно заметно ускорить работу множества веб-приложений и обычных веб-сайтов.

HTTP (RFC 1945) формально является синхронным протоколом. В стандарте чётко прописано, что HTTP-ответ может быть отправлен только после получения соответствующего HTTP-запроса. На практике же всё работает иначе.

На форуме StackOverflow ещё пару лет назад обсуждалась эта тема. Действительно, сайт может выслать HTTP-ответ раньше, чем получил запрос.

Жак Матти пишет, что благодаря эксплуатации этого бага много лет назад ему удалось в десяток раз увеличить фреймрейт при трансляциях с веб-камер. Если следовать спецификациям HTTP, то скорость передачи была в районе 1 FPS, но при использовании асинхронного режима ему удалось повысить скорость до 15 FPS. Все браузеры отлично работают в асинхронном режиме, нарушая спецификации и принимая ответ от сайта до отправки запроса.

Жак говорит, что до сих пор нервничает каждый раз при выходе новых версий браузера, но напрасно: браузеры продолжают работать в обход спецификаций. Более того, новый стандарт SPDY может узаконить такой режим работы.

P.S. Матти заработал не один миллион долларов, используя этот баг, который он обнаружил раньше конкурентов.
Теги:
Хабы:
Всего голосов 104: ↑59 и ↓45+14
Комментарии41

Публикации

Истории

Ближайшие события

19 августа – 20 октября
RuCode.Финал. Чемпионат по алгоритмическому программированию и ИИ
МоскваНижний НовгородЕкатеринбургСтавропольНовосибрискКалининградПермьВладивостокЧитаКраснорскТомскИжевскПетрозаводскКазаньКурскТюменьВолгоградУфаМурманскБишкекСочиУльяновскСаратовИркутскДолгопрудныйОнлайн
24 – 25 октября
One Day Offer для AQA Engineer и Developers
Онлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
26 октября
ProIT Network Fest
Санкт-Петербург
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань