Ateme: микросервисные приложения для обработки медиаконтента в облаке
Чтобы воспользоваться преимуществами облака, очень важно хорошо разбираться в различных облачных технологиях, знать их плюсы и минусы, а также такие возможности в отношении обработки медиаданных (как в виде файлов, так и в реальном времени), как использование микросервисных приложений.
Микросервисы (MS) — это программная архитектура, в которой вместо большого монолитного приложения со множеством функций используется несколько небольших автономных программных компонентов. Каждый компонент выполняет только одну функцию и обменивается данными с другими компонентами по облегченным протоколам. Эти небольшие программные компоненты упакованы в контейнеры и запускаются локально или в облаке с помощью среды выполнения (например, Docker) под управлением оркестратора Kubernetes.
Все программные приложения ATEME доступны в архитектуре микросервисов. В сочетании с гибкой методологией проектирования и методами непрерывной интеграции и доставки (CI/CD) эта архитектура позволяет постоянно совершенствовать наши предложения за счет внедрения новых функций или повышения производительности. В целях повышения эффективностиATEME использует проекты с открытым исходным кодом Cloud Native Computing Foundation (CNCF), которые, помимо прочего, включают в себя следующие компоненты: оркестратор, хранилище, базу данных, реестр, мониторинг, сетевой интерфейс.
Модульный характер нашей архитектуры позволяет повторно использовать некоторые блоки и микросервисы, которые являются общими для нескольких приложений. Например, модуль препроцессора для шумоподавления видео может использоваться как для OTT, так и для традиционного вещания. Аналогичным образом, модуль упаковщика можно использовать как для трансляций в реальном времени, так и при подготовке видео по запросу (OTT VOD). Использование нескольких экземпляров микросервисов в различных комбинациях обеспечивает простоту, последовательность и надежность создания приложений. Воспринимайте это как «лего для взрослых»!
В приложении ATEME Live Encoder добавление резервирования в определенные компоненты, например, в ядро, которое выполняет критически важную обработку контента, легко реализуется путем запуска нового микросервиса.
Наконец, система управления и мониторинга ATEME Management System (AMS), которая позволяет добавлять, настраивать и контролировать каналы в реальном времени, также реализована на основе архитектуры MS.
Микросервисы не только позволяют сравнительно легко переходить от одного поставщика к другому, но и дают возможность реализовать многооблачную архитектуру, за счет чего операторы могут использовать сильные стороны разных поставщиков облачных услуг и сохранять независимость.