Архитектура Видеохостинга От простого www.jatv.by К сложному.

Презентация:



Advertisements
Похожие презентации
Форматы видео: MPG MPG (Moving Pictures Experts Group) - Видеофайл, в котором содержится видео, закодированные: Mpeg1 - стандарт разработан в 1992 году.
Advertisements

O!PLAY HD Media Player (HDP-R1) Поддержка Full HD Поддержка популярных видеоформатов Воспроизведение музыки Поддержка e-SATA Поддержка LAN.
Возможности масштабирования платформы DocsVision.
ЮЖНАЯ КОРЕЯ Америка Европа Б.Восток Азия США Канада Мексика U.K Италия Испания Португалия Франция Россия ОАЭ Кувейт Юж.Африка Гонконг.
Технология FLASH в современном Интернете. Adobe Flash (ранее Macromedia Flash), или просто Flash (по-русски часто пишут флеш или флэш) – мультимедийная.
Иванов Сергей, ННГУ ВМК ФОТ БС Разработка мультимедийных приложений для MeeGo.
(коротко…) Что такое кодек? Кодек это метод сжатия видео- или аудио- информации до наиболее компактного или пригодного для нормального воспроизведения.
Организация доставки видеоконтента пользователям Андрей Смирнов (НетСтрим)
Построение системного ландшафта для высоко нагруженного проекта ООО «Ленвендо-Софт» Гаврилов Виталий Технический директор тел.: +7 (812)
Организация распределенных прикладных систем. Попытаемся ответить на вопросы Как устроены распределенные прикладные системы? Каковы наиболее важные их.
VoiceBase.com распределенное приложение на платформе Amazon Cloud Докладчик: Лаухин Роман ООО «Кварт-Софт»
Аспекты увеличения быстродействия «1С-Битрикс: Управление сайтом» на виртуальном хостинге Артём Рябинков 1С-Битрикс.
Большой Drupal Клера Виленская. Производительность на одном сервере 99 пользователей: 80% аутентифицированных 30% добавляют контент зарегистрировано 1000.
Архитектура, возможности и методы использования платформы облачных вычислений Microsoft Windows Azure Лекция 3 Основные концепции и архитектура Microsoft.
DocsVision 4.0 DocsVision 4.0 универсальная система управления документами и бизнес-процессами.
Богданов Марат Робертович Современные веб-технологии. Подробный курс RIA-приложения.
Предложение по подключению Банка к СМЭВ, ГИС ГМП и другим ФОИВам (Технические подробности)
Технические возможности. Наши цели Максимальная гибкость Максимальная скорость считывания и обработки данных Стабильность работы Максимальная простота.
АИБС Автоматизированная интегрированная библиотечная система (АИБС) «МегаПро»: система нового поколения для библиотек.
Поддержка пользовательских файловых хранилищ. Облачные хранилища. Максим Смирнов ведущий разработчик.
Транксрипт:

Архитектура Видеохостинга От простого К сложному

Скорость подключения к интернет растет не по дням а по часам Европа - 5,6 Mbs Северная Америка - 5,53 Mbs Австралия - 4,42 Mbs Азия - 3,69 Mbs Южная Америка - 1,64 Mbs Африка - 1,03 Mbs Белорусь Mbs (ByFly ) Гомельская область 2.06 Mbs Минск 2.01 Mbs Гродненская область 1.25 Mbs Витебская область 1.03 Mbs Могилевская область 0.8Mbs По данным speedtest.net

Новые цифровые форматы все быстрее входят в нашу жизнь Видео на смену DVD пришел BlueRay прыжек от 720x576 до FullHD 1920x1080 Аудио на смену CD пришел multichannel DTS MA + DolbyTrueHD 44,1KHz 16bit - 96KHz 24bit

Строим видеоресурс за 5 минут Основные функциональные модули Front-end – взаимодействоие с пользовтелем Back-end – обработка информации Проигрыватель – воспроизведение медиаконтента Транскодер – конвертация Хранилище – хранение и доставка контента

Front-end Back-end Платформа PHP Ruby, Pyton, Java,.Net Технологии и концепции Юзабилити Web 2.0 AJAX Тесная интеграция Fron-end и Back-end Внедрение новых медиа форматов (многоканальный звук) Загрузка больших файлов (от 1Гб) Воспроизведение видео Adobe Flash Microsoft Silverlight

Медиа проигрыватель Воспроизведение видео файлов Поддержка списков воспроизведения Поддержка модулей расширения Внешнее API позволяющее работать с плеером JW FLV Media Player - longtailvideo.com Flowplayer - flowplayer.org

Транскодер Контейнер != Формат Контейнер позволяет объединять различные мультимедийные потоки (в большинстве случаев аудио и видео) в один файл. Большое количество контейнеров TS (transport stream), AVI, MP4, OGM, Windows Media Matroska - самый прогрессивный контейнер Большое количество кодеков (более 100) DivX, Xvid, Realmedia, WMV, Mpeg-2 H.264, MPEG-4 Part 10 или AVC - самый перспективный кодек

Выбор кодека для видеохостинга Silverlight WMV H.264 Adobe Flash Flash video H.264 Хоть здесь не налажали ;-) оба конкурента поддерживают H264 H264 - промышленный стандарт Используется в цифровом телевидении высокого разрешения (HDTV) и как основной кодек для видеозаписей Министерством обороны США, компанией Apple и во многих других областях цифрового видео.

Самое дорогое - это время 99,8% времени тратится на преобразование исходного материала в формат понятный браузеру Способы кодирования Большая и жирная машина - много CPU (ядер) - очень дорого Распределенная конвертация - много слабых машин вполне приемлемо Использование GPU для тяжелых просчетов нет открытого кодека, последний писк моды ;-)

Хранилище 1=3 Храним все видео на HDD (RAID) стандартная файловая система (много файлов - много проблем) ограничение по объему довольно ненадежно и дорого трудно масшабируется Внешние хранилища большая скорость доступа к данным очень !!! дорого очень тяжело масшабируется Распределенные файловые системы (DFS) дешево надежно хорошо масшабируется

Запуск или хороший Индеец мертвый индеец... Nginx - http сервер нового поколения легкий быстрый множество модулей (наличие модулей для псевдо стриминга FLV и H.264/AVC) PHP-FPM плавный рестарт php без потери запросов, в том числе при обновлении php binary или extensions запуск php workers с разными uid/gid/chroot/environment все настройки в одном conf файле real-time статистика исполнения php запросов Трансокдер FFmpeg это набор свободных библиотек с открытым исходным кодом, которые позволяют записывать, конвертировать и передавать цифровое аудио и видео в различных форматах.свободныхс открытым исходным кодом База данных MySQL PostgreSQL MsSQL - это что бы не забывать про Микрософт ;-)

Начало… Простая архитектура Низкий уровень кода Приложения не дублируются Борьба за ресурсы

Разделяй и властвуй Один web сервер Выделенный сервер для контента и конвертации

Первая кровь Пара web серверов Используется балансировщик Выделенный сервер БД Выделенный сервер для хранения медиа файлов Проводится незначительный рефакторинг кода

Зубная боль Используется кеширование в memcache Процесс записи в приложениях делается медленно - репликация задерживается либо делается очень долго, начали использовать партиционирование в БД, используется множество хранилищь для контента Тербуется существенный рефакторинг архитектуры БД

Болевой шок Основательный рефакторинг системы Разделение нагрузки от пользователей по какому либо параметру - логин, страна и тд. Группы разделенных пользователей обслуживаются отдельными кластерами.

Боль незначительно усиливается Используется масштабируемая архитектура для приложений и баз данных Работа приложений нас уже полностью устраивает Легко наращивается производительность Легко добавляется новая функциональность Оптимизируется код Ваше приложение все еще растет но процесс уже довольно хорошо управляется

Terra incognita HDFS HBase Map reduce CUDA Cloud computing x264farm ???

Вопросы?

Тут надо вставить еще всякие умные слова про то как космические корабли бороздят просторы Большого Театра... :-) Web 3.0 Ready