AWS MediaConvert ile Sunucusuz Video İşleme Hattı
Video platformu, az yüklemenin olduğu sakin dönemlerden yüzlerce eş zamanlı görevin olduğu yoğun zamanlara kadar değişken kodlama iş yüklerini yönetmek için ölçeklenebilir, uygun maliyetli bir yola ihtiyaç duyuyordu.
Projenizi Tartışın
Zorluk
Sabit kapasiteli kodlama altyapısı ya aşırı kaynak ayrılmış (maliyetli) ya da yetersiz kaynak ayrılmıştı (yavaş):
- Kodlama iş yükleri son derece değişken ve öngörülemezdi
- İçerik lansmanları sırasında yoğun dönemlerde normal hacmin 100 katı artış görülebiliyordu
- 7/24 özel kodlama sunucuları çalıştırmak sakin dönemlerde pahalıydı
- İş hatalarının manuel müdahale olmaksızın otomatik olarak algılanması ve yeniden denenmesi gerekiyordu
Çözümümüz
Esnek, kullandıkça öde video işleme için AWS Lambda tetikleyicileri ve AWS MediaConvert kullanarak sunucusuz bir kodlama hattı uyguladık.
Mimari
- Tetikleyici: S3 yükleme olaylarını izleyen bir AWS Lambda fonksiyonu
- Kodlama: İş ortağına özel iş şablonlarına sahip AWS MediaConvert
- Mesajlaşma: Eş zamansız iş durumu güncellemeleri için ActiveMQ/STOMP
- İzleme: İş ilerlemesini izleyen NestJS kodlayıcı arka ucu
- Depolama: Giriş/çıkış varlıkları için AWS S3
İş Akışı
- S3 Olayı - Video yüklemesi Lambda fonksiyonunu tetikler
- İş Yapılandırması - Lambda iş ortağı profilini okur ve MediaConvert işini oluşturur
- Gönderme - MediaConvert işi uygun çıktı ayarlarıyla gönderilir
- İlerleme Takibi - STOMP mesajları durumu kodlayıcı arka ucuna iletir
- Tamamlama - Çıktı varlıkları S3'te depolanır, meta veriler MongoDB'de güncellenir
- Hata Yönetimi - Başarısız işler, üstel geri çekilme ile yeniden deneme için sıraya alınır
Temel Özellikler
- Sıfır Boşta Kalma Maliyeti - Lambda ve MediaConvert yalnızca gerçek kullanım için ücretlendirir
- Esnek Ölçeklendirme - 1 ila 1000+ eş zamanlı kodlama işini yönetir
- İş Ortağı Şablonları - İş ortağı başına önceden yapılandırılmış MediaConvert iş şablonları
- Olay Odaklı - S3 olayları kodlama iş akışlarını otomatik olarak tetikler
- Kapsamlı İzleme - İş durumu, süresi ve hata takibi
Sonuçlar
Teknoloji Yığını
caseStudyDetail.more Vaka Çalışmaları
Daha fazla teknik uygulamamızı keşfedin
İstemci Tarafında Reklam Ekleme (CSAI), SCTE-35 İşaretleyici Ayrıştırma ve Çok Platformlu Oynatıcı Entegrasyonu ile
Bir video akış platformu, sunucu tarafı reklam eklemenin sağlayamadığı tam reklam etkileşimi desteğiyle (tıklanabilir katmanlar, yardımcı banner'lar, atlama düğmeleri) kişiselleştirilmiş, cihaz düzeyinde reklam deneyimleri sunarak web, mobil ve akıllı TV uygulamaları genelinde Client-Side Ad Insertion (CSAI) uygulamasına ihtiyaç duyuyordu.
SCTE-35 Reklam İşaretleyicisi Sinyalleşmesi ve Medya Fragman Ekleme Hattı
Bir akış medya şirketinin, canlı ve VOD yayınlarına SCTE-35 reklam işaretleyicileri eklemek için sağlam, otomatik bir hattına ihtiyacı vardı. Ayrıca, tanıtım fragmanlarını (pre-roll, mid-roll ve post-roll) hassas zamanlanmış konumlara ekleyebilme yeteneği de isteniyordu — bu sayede FAST kanalları, canlı etkinlikler ve isteğe bağlı içerik kütüphaneleri genelinde para kazanma (monetization) sağlanacaktı.
Sıkça Sorulan Sorular
MicrocosmWorks, Step Functions'ın hattı orkestre ettiği parçalı bir işleme mimarisi tasarladı: Lambda fonksiyonları kaynak videoları segmentlere ayırır, AWS MediaConvert, Lambda zaman aşımı kısıtlamaları olmaksızın gerçek kod dönüştürmeyi yönetir ve son bir Lambda çıktıyı birleştirir. Bu hibrit yaklaşım, herhangi bir süredeki videoları desteklerken sunucusuz maliyet modelini korur.
MicrocosmWorks, ani yoğunlaşan video işleme iş yükleri için özel EC2 kodlama örnekleri çalıştırmaya kıyasla %70-85 maliyet azaltımı ölçtü. Sunucusuz hat boşta olduğunda sıfır maliyetle çalışır ve yoğun dönemlerde yüzlerce eşzamanlı işe kadar ölçeklenir; AWS MediaConvert'ın dakika başına fiyatlandırması, en yüksek kapasite için önceden hazırlık yapma ihtiyacını ortadan kaldırır.
MicrocosmWorks, AWS Step Functions'ı adım başına yeniden deneme politikaları ve üstel geri çekilme ile yapılandırarak, başarısız bir kod dönüştürme adımının tüm hattı yeniden başlatmadan otomatik olarak yeniden denenmesini sağlar. Her aşama ara çıktıları S3'e yazar, böylece kurtarma işlemi kaynak dosyadan yeniden işlemeye gerek kalmadan son başarılı kontrol noktasından devam eder.
MicrocosmWorks, kritik Lambda fonksiyonlarında ayrılmış eşzamanlılık ve MediaConvert ayrılmış kod dönüştürme yuvalarını kullanarak soğuk başlangıç azaltma ile gerçek zamana yakın kullanım senaryoları için hattı optimize etti. Canlı iş akışları için hat, yüklemeden teslimata kadar 2-5 dakikalık uçtan uca gecikme süresi elde eder, bu da klip çıkarma ve özet dağıtımı için uygundur.
MicrocosmWorks, sunucusuz video altyapısını saat başına 25-45 $ oranlarında inşa eder; Step Functions orkestrasyonu, S3 yaşam döngüsü yönetimi ve izleme dahil eksiksiz bir MediaConvert tabanlı hat genellikle 250-400 geliştirme saati gerektirir. Mimarinın kullandıkça öde modeli, müşterilerin yalnızca gerçek işleme hacimlerine orantılı AWS maliyetlerini ödediği anlamına gelir.
İşletmenizi Dönüştürmeye Hazır mısınız?
Zorluklarınıza benzer çözümler uygulamamızın yollarını konuşalım.