Уявіть, що новий епізод "Гри в кальмара" вийшов о 10:00. 100 мільйонів людей одночасно натискають "Play". Якщо всі ці запити підуть на один сервер у Каліфорнії, він розплавиться швидше, ніж морозиво в пеклі.
Як Netflix витримує це навантаження? Секрет у двох технологіях: CDN (доставка) та ABR (адаптація).
CDN — це мережа серверів, розкиданих по всьому світу. Ідея проста: Кеш має бути ближче до користувача.
Коли ви у Києві відкриваєте відео:
Netflix пішов далі. Вони не просто орендують сервери (як Akamai чи Cloudflare). Вони дарують свої сервери (Open Connect Appliances - OCA) інтернет-провайдерам. Це червоні ящики з 300 ТБ дисків, які стоять прямо у вашого провайдера. Коли ви дивитесь Netflix, трафік часто навіть не покидає мережу вашого провайдера. Це економить провайдеру гроші на зовнішніх каналах, а вам дає 4K без буферизації.
Ми доставили дані швидко. Але що, якщо у користувача повільний 3G? Відео 4K (25 Mbps) просто не пролізе в канал 5 Mbps.
Тут вступає ABR (Adaptive Bitrate Streaming). Плеєр — це не просто екран. Це розумний робот, який кожну секунду приймає рішення:
Плеєр не знає швидкості. Він бере найбезпечніший варіант (наприклад, 480p), щоб відео почалося миттєво.
Якщо буфер заповнений > 30 секунд і швидкість стабільна -> качаємо наступний сегмент у вищій якості. Користувач бачить, як картинка стає чіткою.
Якщо швидкість різко впала (зайшли в ліфт) і буфер спорожнів до < 5 секунд -> терміново качаємо наступний шматок у 240p. Головне правило: Краще милити пікселі, ніж зупинити відео (Rebuffering).
Спробуймо обдурити плеєр.
Відкрийте будь-яке відео в якості Auto. Це важливо. Не ставте 1080p примусово.
Клікніть п.к.м. на відео -> Stats for nerds.
Дивіться на поле Connection Speed та Buffer Health.
Відкрийте DevTools -> Network.
У випадаючому списку (де Fast 3G або No throttling) створіть Custom Profile:
Painful DSL400 kb/s (дуже повільно)Активуйте цей профіль.
Почекайте 10-20 секунд (поки вичерпається існуючий буфер).
Ви побачите, як Resolution впаде з 1920x1080 до 640x360 або навіть 256x144.
Але відео не зупиниться! Це і є магія ABR.