Вариантов по сути много. Все зависит от твоего бюджета (или бюджета конторы, где ты работаешь)
Бери Nginx для отдачи файлов.
Для 10к человек и видео такого размера нужна нехилая такая инфраструктура. По сути все сводится к тому, что тебе нужен либо CDN, либо несколько серверов с большим каналом, либо стая виртуалок.
Разберем каждый вариант.
1) CDN - это довольно дорого будет для тебя учитывая потребности. Трафик на CDN сейчас не из дешевых. Терабайт можно взять за 1000 руб - это минимум. А так у того же Selectel цена будет от 2000 руб за терабайт.
2) Серваки. Бывают разные. Можно взять 1 сервер с 20 гбит каналом. Но это не будет очень разумным. Вдруг сервер выйдет из строя. И чтоб раздать на 10к пользователей видео по 7 гб нужно будет нехилое железо.
Есть другой вариант. Взять несколько серверов с 1 гбит каналом. Тут тебе поможет немецкое качество от Hetzner.
https://ru.hetzner.com/hosting/produkte_rootserver... вот такой вот сервер тебе выйдет в 3000-3500 рублей в месяц. По нагрузке сам прикинь и подумай сколько таких серверов нужно будет взять. Ну грубо говоря пускай 20 серверов по 1 гбит это будет стоить около 60000 руб в месяц. Только учитывай, что сервер тебе ставится не сразу. Сейчас это занимает несколько дней. Иногда неделю. Прошляпишь момент и часть твоей аудитории не сможет насладиться просмотром.
3) Виртуалки. Пиши свой софт или бери готовый. Идея в том, что по API у Hetzner и многих других хостеров можно заказывать виртуалки. В пиковые нагрузки просто скрипт будет закупать виртуалок, настраивать их и загружать бек на них. Оплата почасовая. То есть ночью можешь почти ничего не платить. За то днем скрипт будет сам виртуалки поднимать сколько нужно будет сервису.
https://www.hetzner.com/cloud-ru Тебе дается 20 ТБ трафика на виртуалку. Скрипт должен смотреть на трафик и когда стрелочка доходит до 20 ТБ скрипт должен вырубать новые коннекты к виртуалке и когда последний зритель отрубится, удалять виртуалку.
Есть еще всяки-разны scaleway
https://www.scaleway.com/en/virtual-instances/deve... Там уже виртуалки с безлимитным трафиком и канал пошире будет. Ну и оплата тоже почасовая.
Вот как то так. Можно комбинировать второй и третий вариант. Можно на чем то одном сидеть. Опять же все зависит от бюджета. Можно сделать так, чтобы пользователи друг другу отдавали видео. Для снятиz части нагрузки с сервера. Типо P2P сеть.