21.09.2021 в 21:17
Внутри Netflix: как сервис раздает сотни гигабит видео в секунду
Все работает на процессорах AMD: Intel и ARM оказалось недостаточно.
Кстати, на сайте читать удобнее
Сервис Netflix обслуживает больше 200 миллионов подписчиков по всему миру, постоянно создающих огромную нагрузку на инфраструктуру компании. На презентации в рамках конференции EuroBSD 2021 старший разработчик Дрю Галлатин рассказал, как компания справляется с такой нагрузкой.
- В основе архитектуры Netflix лежат ноды на базе 32-ядерных процессоров AMD EPYC 7502P, отдающие зашифрованный видеоконтент.
- Одна нода несет на борту 256 гигабайт оперативной памяти и 18 накопителей Western Digital SN720: это NVMe-накопители объемом по 2 терабайта.
- За связь отвечают адаптеры Mellanox ConnectX-6 Dx от Nvidia. У каждого адаптера есть два порта, обеспечивающих скорость до 100 Гбит/сек.
- Одна такая нода может отдавать контент со скоростью 240 Гбит/сек, упираясь в оперативную память.
- Чтобы ускорить доступ к памяти, решили использовать архитектуру NUMA. При использовании четырех нод, объединенных в один узел, пропускную способность удалось повысить до 280 Гбит/сек.
- Работать с такой конфигурацией в реальных условиях оказалось очень сложно, нормально нагрузить шину Infinity Fabric удавалось не всегда, латентность системы выросла.
- В итоге решили оптимизировать нагрузку, перенеся шифрование с центральных процессоров нод на адаптеры Mellanox.
- Решение оказалось верным. Сняв с CPU шифровку контента, пропускную способность одной ноды удалось поднять до 380-400 Гбит/сек. Чтобы добиться этого, пришлось тюнить прошивку адаптеров.
- Нагрузка снизилась очень значительно: на 60% у одного сервера без использования NUMA и на 50% с конфигурацией из нескольких нод.
- В результате производительность ноды уперлась в производительность адаптера Mellanox. Это хороший результат: запас по мощности есть.
- Помимо платформы на базе AMD тестировались еще два решения: на Intel Xeon 8352V и Ampere Altra.
- Обе системы оснащались той же памятью, накопителями и адаптерами, что и система с AMD. Добиться похожей производительности на них не удалось.
- От системы на базе Ampere Altra получили максимум 320 Гбит/сек.
- Система на Intel выдала только 230 Гбит/сек при шифровании на CPU, упершись в память.
В следующем году, шутит Дрю, у него будет повод вернуться на конференцию: Netflix готовится опробовать прототип системы, способно обеспечить 800 Гбит/сек.