Интеллектуальная балансировка видео нагрузки

load distribution

У всех видео сервисов есть две важные особенности: даже при небольшом количестве одновременных зрителей нагрузка становится ощутимой; в случае проблем с доставкой видео пользователи могут перестать пользоваться сервисом. Чаще всего проблемы с доставкой видео связаны с высокой нагрузкой и неоптимальным использованием ресурсов. Для решения такого рода задач в наших проектах мы использовали специальный модуль – балансировщик видеонагрузки. В этой статье мы подробно расскажем про этот балансировщик, а также о том, как построить эффективную видеоплатформу благодаря оптимальному распределению нагрузки. Continue reading

Разработка высокопроизводительных сервисов на Node.js


В данной статье речь пойдет о разработке с использованием сравнительно молодой технологии Node.js. Она стремительно набирает популярность — и не безосновательно. Эта технология позволяет реализовывать быстрые веб-сервисы, способные выдерживать колоссальные нагрузки, что крайне важно для видеосервисов. Например, на Node.js удобно делать сборщики статистики в реальном времени, масштабные чаты и т.п. Конечно, сервисы, написанные на C++, обладают большим потенциалом производительности, но стоимость их реализации слишком высока. Нода же позволяет быстро создавать сложные системы. В данной статье мы рассмотрим использование Node.js для создания простого приложения, способного выдерживать очень высокую нагрузку. Continue reading

Примеры из жизни: BBC Olympics



BBC-Olympics-2012

Сервис спортивных трансляций BBC Olympics стал одним из главных событий 2012 года. Индустрия видеосервисов вышла на новый уровень, а Олимпийские Игры 2012 года все уже привыкли называть «по-настоящему цифровыми». Очень важно отметить всю важность накопленного опыта и идти дальше на базе этих новых достижений. В этой статье мы рассмотрим этот проект, его реализацию и ценный опыт, который вы можете использовать в своих проектах. Continue reading

Сервис видео статистики

video-analytics
Ни для кого не секрет, что видео статистика и аналитика – важная составляющая любого видеопортала. Одна из главных целей сбора статистики просмотров – осуществление взаиморасчетов с правообладателями. Но, помимо этой задачи, есть  еще целый ряд важных задач, например:

  • ограничение количества одновременных просмотров с одного аккаунта (Вы же не хотите, чтобы под одним аккаунтом смотрели видео все знакомые одного счастливого покупателя? Точнее, пусть смотрят, но хотя бы по очереди, а не одновременно :)),
  • запрет на просмотр любого видео для пользователей, получивших абонемент на просмотр по ошибке или вследствие некой махинации,
  • оценка качества и популярности видео,
  • возврат в точку, где просмотр был прерван (с любого устройства),
  • и последнее в списке, но отнюдь не по важности – обеспечение удобства для пользователя.

Разумеется, не стоит забывать, что каждый видеопортал имеет свои специфичные задачи, которые немыслимы  без сведений о просмотрах. В этой статье мы обсудим особенности реализации такого сервиса. Continue reading

Flash Media Server 4.5.2: Надежный стриминг

streaming failover

Некоторое время назад Adobe анонсировало  небольшой апдейт Flash Media Server — версия 4.5.2. В новом релизе осуществлена поддержка failover в HTTP стриминге. Для крупных и серьезных сервисов данные механизмы жизненно важны, особенно в случае live контента. Некоторые подробности ниже. Continue reading

Масштабирование видео проектов

high speed web
Запуск крупных онлайн видео порталов требует большой точности и аккуратности на этапе проектирования. В дополнение к сложной инфраструктуре веб платформы (сам портал) добавляется ничуть не менее сложная инфраструктура видео платформы (доставка контента только часть этой платформы). В этой статье мы расскажем о некоторых важных принципах проектирования онлайн видео сервисов, которые мы усвоили за пять лет работы над подобными проектами. Continue reading

HTTP Dynamic Streaming: построение кластера

HTTP Dynamic Streaming

В наших предыдущих статьях мы подробно рассматривали механизмы кеширования HTTP Dynamic Streaming контента средствами веб-сервера NGINX. Но в масштабах больших проектов одного такого подхода чаще всего бывает недостаточно. В этой статье мы поговорим о построении высокопроизводительных HTTP Dynamic Streaming систем доставки контента. Continue reading

Кеширование высоконагрузочных порталов средствами NGINX

В определенное время наступает переломный момент, когда посещаемость вашего портала начинает расти, но порой это приносит не только чувство радости за свое детище, но и проблемы связанные с производительностью. Не спешите искать деньги на покупку новых серверов и оптимизацию кода вашего проекта, возможно, Вам достаточно будет настроить кеширование страниц на frontend-сервере без серьезных архитектурных изменений.

Continue reading

Защита и оптимизация Flash Media Server’ов

FMS-сервера компании Adobe это гибкие и надежные решения, которые готовы к работе сразу после простой процедуры инсталяции. Но простота установки и интеграции порой влечет некоторые проблемы в безопасноте проекта, использующего FMS. Вы можете защитить ваши сервера от проблем с безопасностью, внеся изменения в конфигурационные файлы и в этой статье будет рассказано как это сделать.

Continue reading

Построение высоконагрузочных систем доставки видео контента

В мультимедийных Интернет проектах использование базовых средств сетевой балансировки нагрузки между видео серверами, как правило, не эффективно и даже ограничивает функциональные возможности. Предлагаемая в статье архитектура построения сети доставки контента позволит эффективно решить данную задачу.
Continue reading