SlideShare una empresa de Scribd logo
1 de 20
Архитектура
Видеохостинга
От простого       К сложному




          www.jatv.by
Скорость подключения к интернет
                растет не по дням а по часам

Европа - 5,6 Mbs
Северная Америка - 5,53 Mbs
Австралия - 4,42 Mbs
Азия - 3,69 Mbs
Южная Америка - 1,64 Mbs
Африка - 1,03 Mbs

Белорусь - 1.8 Mbs (ByFly 1.6-2.0)
Гомельская область 2.06 Mbs
Минск 2.01 Mbs
Гродненская область 1.25 Mbs
Витебская область 1.03 Mbs
Могилевская область 0.8Mbs
                                              По данным speedtest.net


                                www.jatv.by
Новые цифровые форматы все
                 быстрее входят в нашу жизнь


Видео

на смену DVD пришел BlueRay
прыжек от 720x576 до FullHD 1920x1080

Аудио
на смену CD пришел multichannel DTS MA + DolbyTrueHD
44,1KHz 16bit - 96KHz 24bit




                            www.jatv.by
Строим видеоресурс за 5 минут




Основные функциональные модули

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




                           www.jatv.by
Front-end Back-end

Платформа
PHP Ruby, Pyton, Java, .Net

Технологии и концепции
Юзабилити
Web 2.0
AJAX
Тесная интеграция Fron-end и Back-end
Внедрение новых медиа форматов (многоканальный звук)
Загрузка больших файлов (от 1Гб)

Воспроизведение видео
Adobe Flash
Microsoft Silverlight

                          www.jatv.by
Медиа проигрыватель



Воспроизведение видео файлов
Поддержка списков воспроизведения
Поддержка модулей расширения
Внешнее API позволяющее работать с плеером

JW FLV Media Player - longtailvideo.com
Flowplayer - flowplayer.org




                               www.jatv.by
Транскодер


Контейнер != Формат
Контейнер позволяет объединять различные мультимедийные потоки (в
большинстве случаев аудио и видео) в один файл.

Большое количество контейнеров
TS (transport stream), AVI, MP4, OGM, Windows Media
Matroska - самый прогрессивный контейнер

Большое количество кодеков (более 100)
DivX, Xvid, Realmedia, WMV, Mpeg-2
H.264, MPEG-4 Part 10 или AVC - самый перспективный кодек


                              www.jatv.by
Выбор кодека для видеохостинга

Silverlight
WMV
H.264

Adobe Flash
Flash video
H.264

Хоть здесь не налажали ;-) оба конкурента поддерживают H264

H264 - промышленный стандарт

Используется в цифровом телевидении высокого разрешения (HDTV) и как
основной кодек для видеозаписей Министерством обороны
США, компанией Apple и во многих других областях цифрового видео.
                       www.jatv.by
Самое дорогое - это время


99,8% времени тратится на преобразование исходного материала в
формат понятный браузеру

Способы кодирования

Большая и жирная машина - много CPU (ядер) - очень дорого

Распределенная конвертация - много слабых машин вполне приемлемо

Использование GPU для тяжелых просчетов
нет открытого кодека, последний писк моды ;-)


                             www.jatv.by
Хранилище
               1=3

Храним все видео на HDD (RAID)
    •стандартная файловая система (много файлов - много проблем)
    •ограничение по объему
    •довольно ненадежно и дорого
    •трудно масшабируется

Внешние хранилища

                    •большая скорость доступа к данным
                    •очень !!! дорого
                    •очень тяжело масшабируется


Распределенные файловые системы (DFS)
    •дешево
    •надежно
    •хорошо масшабируется
                              www.jatv.by
Запуск или хороший Индеец
                     мертвый индеец...
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 - это что бы не забывать про Микрософт ;-)
                                     www.jatv.by
Начало…




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




          www.jatv.by
Разделяй и властвуй




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




          www.jatv.by
Первая кровь




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




DB    DB    www.jatv.by
Зубная боль


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

DB    DB    Memcache     Sphinx

                                  www.jatv.by
Болевой шок



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




             www.jatv.by
Боль незначительно усиливается
Terra incognita




                          •HDFS



  ???
                          •HBase
                          •Map reduce
                          •CUDA
                          •Cloud computing
                          •x264farm




            www.jatv.by
Вопросы?




dmytrosychevsky@gmail.com




        www.jatv.by
Web 3.0 Ready




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




               www.jatv.by

Más contenido relacionado

La actualidad más candente

советы, которые спасут ваш компьютер
советы, которые спасут ваш компьютерсоветы, которые спасут ваш компьютер
советы, которые спасут ваш компьютерanna.korovko
 
Платформы Java и .NET. Современные концепции ООП
Платформы Java и .NET. Современные концепции ООППлатформы Java и .NET. Современные концепции ООП
Платформы Java и .NET. Современные концепции ООПBoris Volfson
 
06 01 сертифицированные продукты
06 01 сертифицированные продукты06 01 сертифицированные продукты
06 01 сертифицированные продуктыLiudmila Li
 
компьютер изнутри
компьютер изнутрикомпьютер изнутри
компьютер изнутриPuLJa
 
Оптимизация сайта на Wordpress: темы, плагины, лайфхаки
Оптимизация сайта на Wordpress: темы, плагины, лайфхакиОптимизация сайта на Wordpress: темы, плагины, лайфхаки
Оптимизация сайта на Wordpress: темы, плагины, лайфхакиcollaborator.pro
 
присяжный Root Conf2009 Beta 1
присяжный Root Conf2009 Beta 1присяжный Root Conf2009 Beta 1
присяжный Root Conf2009 Beta 1Liudmila Li
 
JAM4ME
JAM4MEJAM4ME
JAM4ME2tique
 
Elina kuzyutkina-hitrosti-i-tryuki-v-ispolzovanii-zabbix
Elina kuzyutkina-hitrosti-i-tryuki-v-ispolzovanii-zabbixElina kuzyutkina-hitrosti-i-tryuki-v-ispolzovanii-zabbix
Elina kuzyutkina-hitrosti-i-tryuki-v-ispolzovanii-zabbixMichael Ganschuk
 
интернет контроль сервер V4
интернет контроль сервер V4интернет контроль сервер V4
интернет контроль сервер V4arealconsulting
 
Wap Face
Wap FaceWap Face
Wap Face2tique
 
Sergey Kh Citrus Systems 2009
Sergey Kh Citrus Systems 2009Sergey Kh Citrus Systems 2009
Sergey Kh Citrus Systems 2009Liudmila Li
 
(RUS) IBM Lotus social software solutions
(RUS) IBM Lotus social software solutions(RUS) IBM Lotus social software solutions
(RUS) IBM Lotus social software solutionsPetr Valing
 
Щастливият програмист
Щастливият програмистЩастливият програмист
Щастливият програмистNikolay Bachiyski
 
Data-Driven SEO. Магия сегментирования в действии
Data-Driven SEO. Магия сегментирования в действииData-Driven SEO. Магия сегментирования в действии
Data-Driven SEO. Магия сегментирования в действииcollaborator.pro
 

La actualidad más candente (19)

советы, которые спасут ваш компьютер
советы, которые спасут ваш компьютерсоветы, которые спасут ваш компьютер
советы, которые спасут ваш компьютер
 
Gwt.org.ua (ukr)
Gwt.org.ua (ukr)Gwt.org.ua (ukr)
Gwt.org.ua (ukr)
 
lenvendo on bitrix cms
lenvendo on bitrix cmslenvendo on bitrix cms
lenvendo on bitrix cms
 
Платформы Java и .NET. Современные концепции ООП
Платформы Java и .NET. Современные концепции ООППлатформы Java и .NET. Современные концепции ООП
Платформы Java и .NET. Современные концепции ООП
 
06 01 сертифицированные продукты
06 01 сертифицированные продукты06 01 сертифицированные продукты
06 01 сертифицированные продукты
 
Sapka Contest 2009 (RU)
Sapka Contest 2009 (RU)Sapka Contest 2009 (RU)
Sapka Contest 2009 (RU)
 
Bgp
BgpBgp
Bgp
 
Interface team
Interface teamInterface team
Interface team
 
компьютер изнутри
компьютер изнутрикомпьютер изнутри
компьютер изнутри
 
Оптимизация сайта на Wordpress: темы, плагины, лайфхаки
Оптимизация сайта на Wordpress: темы, плагины, лайфхакиОптимизация сайта на Wordpress: темы, плагины, лайфхаки
Оптимизация сайта на Wordpress: темы, плагины, лайфхаки
 
присяжный Root Conf2009 Beta 1
присяжный Root Conf2009 Beta 1присяжный Root Conf2009 Beta 1
присяжный Root Conf2009 Beta 1
 
JAM4ME
JAM4MEJAM4ME
JAM4ME
 
Elina kuzyutkina-hitrosti-i-tryuki-v-ispolzovanii-zabbix
Elina kuzyutkina-hitrosti-i-tryuki-v-ispolzovanii-zabbixElina kuzyutkina-hitrosti-i-tryuki-v-ispolzovanii-zabbix
Elina kuzyutkina-hitrosti-i-tryuki-v-ispolzovanii-zabbix
 
интернет контроль сервер V4
интернет контроль сервер V4интернет контроль сервер V4
интернет контроль сервер V4
 
Wap Face
Wap FaceWap Face
Wap Face
 
Sergey Kh Citrus Systems 2009
Sergey Kh Citrus Systems 2009Sergey Kh Citrus Systems 2009
Sergey Kh Citrus Systems 2009
 
(RUS) IBM Lotus social software solutions
(RUS) IBM Lotus social software solutions(RUS) IBM Lotus social software solutions
(RUS) IBM Lotus social software solutions
 
Щастливият програмист
Щастливият програмистЩастливият програмист
Щастливият програмист
 
Data-Driven SEO. Магия сегментирования в действии
Data-Driven SEO. Магия сегментирования в действииData-Driven SEO. Магия сегментирования в действии
Data-Driven SEO. Магия сегментирования в действии
 

Destacado

Видеохостинг своими руками
Видеохостинг своими рукамиВидеохостинг своими руками
Видеохостинг своими рукамиStanislavMalkin
 
開源 x 節流:企業導入實例分享 (二) [2016/03/31] 文件自由日研討會
開源 x 節流:企業導入實例分享 (二) [2016/03/31] 文件自由日研討會開源 x 節流:企業導入實例分享 (二) [2016/03/31] 文件自由日研討會
開源 x 節流:企業導入實例分享 (二) [2016/03/31] 文件自由日研討會Jason Cheng
 
Privacy is an Illusion and you’re all losers! - Cryptocow - Infosecurity 2013
Privacy is an Illusion and you’re all losers! - Cryptocow - Infosecurity 2013Privacy is an Illusion and you’re all losers! - Cryptocow - Infosecurity 2013
Privacy is an Illusion and you’re all losers! - Cryptocow - Infosecurity 2013Cain Ransbottyn
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsLinkedIn
 
UX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and ArchivesUX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and ArchivesNed Potter
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerLuminary Labs
 
Designing Teams for Emerging Challenges
Designing Teams for Emerging ChallengesDesigning Teams for Emerging Challenges
Designing Teams for Emerging ChallengesAaron Irizarry
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with DataSeth Familian
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017Drift
 
TEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of WorkTEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of WorkVolker Hirsch
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheLeslie Samuel
 

Destacado (14)

Видеохостинг своими руками
Видеохостинг своими рукамиВидеохостинг своими руками
Видеохостинг своими руками
 
Adobe Media server family
Adobe Media server familyAdobe Media server family
Adobe Media server family
 
Projeto gelo
Projeto geloProjeto gelo
Projeto gelo
 
開源 x 節流:企業導入實例分享 (二) [2016/03/31] 文件自由日研討會
開源 x 節流:企業導入實例分享 (二) [2016/03/31] 文件自由日研討會開源 x 節流:企業導入實例分享 (二) [2016/03/31] 文件自由日研討會
開源 x 節流:企業導入實例分享 (二) [2016/03/31] 文件自由日研討會
 
Privacy is an Illusion and you’re all losers! - Cryptocow - Infosecurity 2013
Privacy is an Illusion and you’re all losers! - Cryptocow - Infosecurity 2013Privacy is an Illusion and you’re all losers! - Cryptocow - Infosecurity 2013
Privacy is an Illusion and you’re all losers! - Cryptocow - Infosecurity 2013
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving Cars
 
UX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and ArchivesUX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and Archives
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
 
Designing Teams for Emerging Challenges
Designing Teams for Emerging ChallengesDesigning Teams for Emerging Challenges
Designing Teams for Emerging Challenges
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
 
TEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of WorkTEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of Work
 
Build Features, Not Apps
Build Features, Not AppsBuild Features, Not Apps
Build Features, Not Apps
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
 

Más de Транслируем.бел

Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)Транслируем.бел
 
Корпоративный новый год онлайн
Корпоративный новый год онлайнКорпоративный новый год онлайн
Корпоративный новый год онлайнТранслируем.бел
 
Руководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решенийРуководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решенийТранслируем.бел
 
Онлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетяхОнлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетяхТранслируем.бел
 
Как организовать трансляцию в Facebook
Как организовать трансляцию в FacebookКак организовать трансляцию в Facebook
Как организовать трансляцию в FacebookТранслируем.бел
 
Что сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделыватьЧто сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделыватьТранслируем.бел
 
Когда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений КравченкоКогда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений КравченкоТранслируем.бел
 
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособиеSMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособиеТранслируем.бел
 
методы монетизации интернет проектов
методы монетизации интернет проектовметоды монетизации интернет проектов
методы монетизации интернет проектовТранслируем.бел
 

Más de Транслируем.бел (20)

Медицинские трансляции
Медицинские трансляцииМедицинские трансляции
Медицинские трансляции
 
Vinteo
VinteoVinteo
Vinteo
 
Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)
 
Корпоративный новый год онлайн
Корпоративный новый год онлайнКорпоративный новый год онлайн
Корпоративный новый год онлайн
 
Unofficial guide to vmix by streamgeeks
Unofficial guide to vmix by streamgeeksUnofficial guide to vmix by streamgeeks
Unofficial guide to vmix by streamgeeks
 
Руководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решенийРуководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решений
 
Sennheiser ew100 g2
Sennheiser ew100 g2Sennheiser ew100 g2
Sennheiser ew100 g2
 
Sony mcs 8m
Sony mcs 8mSony mcs 8m
Sony mcs 8m
 
Сравнение поколений Y и Z
Сравнение поколений Y и ZСравнение поколений Y и Z
Сравнение поколений Y и Z
 
Онлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетяхОнлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетях
 
Как организовать трансляцию в Facebook
Как организовать трансляцию в FacebookКак организовать трансляцию в Facebook
Как организовать трансляцию в Facebook
 
The ultimate guide to facebook live for your event
The ultimate guide to facebook live for your eventThe ultimate guide to facebook live for your event
The ultimate guide to facebook live for your event
 
Guide to facebook live
Guide to facebook liveGuide to facebook live
Guide to facebook live
 
Comdi player
Comdi playerComdi player
Comdi player
 
Что сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделыватьЧто сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделывать
 
Когда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений КравченкоКогда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений Кравченко
 
Marketing Essentials for Startup Teams
Marketing Essentials for Startup TeamsMarketing Essentials for Startup Teams
Marketing Essentials for Startup Teams
 
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособиеSMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
 
методы монетизации интернет проектов
методы монетизации интернет проектовметоды монетизации интернет проектов
методы монетизации интернет проектов
 
Belarus internet users discovery
Belarus internet users discoveryBelarus internet users discovery
Belarus internet users discovery
 

video hostings architecture

  • 2. Скорость подключения к интернет растет не по дням а по часам Европа - 5,6 Mbs Северная Америка - 5,53 Mbs Австралия - 4,42 Mbs Азия - 3,69 Mbs Южная Америка - 1,64 Mbs Африка - 1,03 Mbs Белорусь - 1.8 Mbs (ByFly 1.6-2.0) Гомельская область 2.06 Mbs Минск 2.01 Mbs Гродненская область 1.25 Mbs Витебская область 1.03 Mbs Могилевская область 0.8Mbs По данным speedtest.net www.jatv.by
  • 3. Новые цифровые форматы все быстрее входят в нашу жизнь Видео на смену DVD пришел BlueRay прыжек от 720x576 до FullHD 1920x1080 Аудио на смену CD пришел multichannel DTS MA + DolbyTrueHD 44,1KHz 16bit - 96KHz 24bit www.jatv.by
  • 4. Строим видеоресурс за 5 минут Основные функциональные модули Front-end – взаимодействоие с пользовтелем Back-end – обработка информации Проигрыватель – воспроизведение медиаконтента Транскодер – конвертация Хранилище – хранение и доставка контента www.jatv.by
  • 5. Front-end Back-end Платформа PHP Ruby, Pyton, Java, .Net Технологии и концепции Юзабилити Web 2.0 AJAX Тесная интеграция Fron-end и Back-end Внедрение новых медиа форматов (многоканальный звук) Загрузка больших файлов (от 1Гб) Воспроизведение видео Adobe Flash Microsoft Silverlight www.jatv.by
  • 6. Медиа проигрыватель Воспроизведение видео файлов Поддержка списков воспроизведения Поддержка модулей расширения Внешнее API позволяющее работать с плеером JW FLV Media Player - longtailvideo.com Flowplayer - flowplayer.org www.jatv.by
  • 7. Транскодер Контейнер != Формат Контейнер позволяет объединять различные мультимедийные потоки (в большинстве случаев аудио и видео) в один файл. Большое количество контейнеров TS (transport stream), AVI, MP4, OGM, Windows Media Matroska - самый прогрессивный контейнер Большое количество кодеков (более 100) DivX, Xvid, Realmedia, WMV, Mpeg-2 H.264, MPEG-4 Part 10 или AVC - самый перспективный кодек www.jatv.by
  • 8. Выбор кодека для видеохостинга Silverlight WMV H.264 Adobe Flash Flash video H.264 Хоть здесь не налажали ;-) оба конкурента поддерживают H264 H264 - промышленный стандарт Используется в цифровом телевидении высокого разрешения (HDTV) и как основной кодек для видеозаписей Министерством обороны США, компанией Apple и во многих других областях цифрового видео. www.jatv.by
  • 9. Самое дорогое - это время 99,8% времени тратится на преобразование исходного материала в формат понятный браузеру Способы кодирования Большая и жирная машина - много CPU (ядер) - очень дорого Распределенная конвертация - много слабых машин вполне приемлемо Использование GPU для тяжелых просчетов нет открытого кодека, последний писк моды ;-) www.jatv.by
  • 10. Хранилище 1=3 Храним все видео на HDD (RAID) •стандартная файловая система (много файлов - много проблем) •ограничение по объему •довольно ненадежно и дорого •трудно масшабируется Внешние хранилища •большая скорость доступа к данным •очень !!! дорого •очень тяжело масшабируется Распределенные файловые системы (DFS) •дешево •надежно •хорошо масшабируется www.jatv.by
  • 11. Запуск или хороший Индеец мертвый индеец... 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 - это что бы не забывать про Микрософт ;-) www.jatv.by
  • 12. Начало… Простая архитектура Низкий уровень кода Приложения не дублируются Борьба за ресурсы www.jatv.by
  • 13. Разделяй и властвуй •Один web сервер •Выделенный сервер для контента и конвертации www.jatv.by
  • 14. Первая кровь •Пара web серверов •Используется балансировщик •Выделенный сервер БД •Выделенный сервер для хранения медиа файлов •Проводится незначительный рефакторинг кода Web Web File DB DB www.jatv.by
  • 15. Зубная боль •Используется кеширование в memcache •Процесс записи в приложениях делается медленно - репликация задерживается либо делается очень долго, начали использовать партиционирование в БД, используется множество хранилищь Web Web File File File для контента •Тербуется существенный рефакторинг архитектуры БД DB DB Memcache Sphinx www.jatv.by
  • 16. Болевой шок •Основательный рефакторинг системы ЦОД •Разделение нагрузки от ЦОД пользователей по какому либо параметру - логин, страна и тд. •Группы разделенных пользователей ЦОД обслуживаются отдельными кластерами. www.jatv.by
  • 18. Terra incognita •HDFS ??? •HBase •Map reduce •CUDA •Cloud computing •x264farm www.jatv.by
  • 20. Web 3.0 Ready Тут надо вставить еще всякие умные слова про то как космические корабли бороздят просторы Большого Театра... :-) www.jatv.by