צינור עיבוד וידאו ללא שרתים עם AWS MediaConvert
פלטפורמת הווידאו נדרשה לפתרון ניתן להרחבה וחסכוני להתמודדות עם עומסי קידוד משתנים, החל מתקופות שקטות עם מעט העלאות ועד לתקופות שיא עם מאות משימות בו-זמניות.
דון בפרויקט שלך
האתגר
תשתית קידוד בעלת קיבולת קבועה הייתה או בעלת הקצאת יתר (יקרה) או בעלת תת-הקצאה (איטית):
- עומסי הקידוד היו משתנים מאוד ובלתי צפויים
- תקופות שיא יכלו לראות נפח גדול פי 100 מהרגיל בזמן השקות תוכן
- הפעלת שרתי קידוד ייעודיים 24/7 הייתה יקרה בתקופות שקטות
- כשלים במשימות דרשו זיהוי אוטומטי וניסיון חוזר ללא התערבות ידנית
הפתרון שלנו
יישמנו צינור קידוד ללא שרתים באמצעות טריגרים של AWS Lambda ו-AWS MediaConvert לעיבוד וידאו גמיש בתשלום לפי שימוש.
ארכיטקטורה
- טריגר: פונקציית AWS Lambda המנטרת אירועי העלאה ל-S3
- קידוד: AWS MediaConvert עם תבניות משימה ספציפיות לשותף
- העברת הודעות: ActiveMQ/STOMP לעדכוני סטטוס משימה אסינכרוניים
- ניטור: קצה עורפי (backend) של מקודד NestJS העוקב אחר התקדמות המשימה
- אחסון: AWS S3 עבור נכסי קלט/פלט
זרימת הצינור
- אירוע S3 - העלאת וידאו מפעילה פונקציית Lambda
- תצורת משימה - Lambda קוראת את פרופיל השותף ובונה משימת MediaConvert
- הגשה - משימת MediaConvert מוגשת עם הגדרות פלט מתאימות
- מעקב התקדמות - הודעות STOMP מעבירות סטטוס לקצה העורפי של המקודד
- השלמה - נכסי הפלט מאוחסנים ב-S3, מטא נתונים מתעדכנים ב-MongoDB
- טיפול בשגיאות - משימות שנכשלו נכנסות לתור לניסיון חוזר עם השהיה אקספוננציאלית
תכונות מפתח
- עלות אפסית בזמן סרק - Lambda ו-MediaConvert גובות תשלום רק עבור שימוש בפועל
- התרחבות גמישה - מטפל ב-1 עד 1000+ משימות קידוד בו-זמניות
- תבניות שותפים - תבניות משימה מוגדרות מראש של MediaConvert לכל שותף
- מבוסס אירועים - אירועי S3 מפעילים אוטומטית תהליכי עבודה של קידוד
- ניטור מקיף - מעקב אחר סטטוס משימה, משך זמן ושגיאות
תוצאות
מחסנית טכנולוגית
caseStudyDetail.more מקרי בוחן
גלה עוד מהיישומים הטכניים שלנו
הזרקת פרסומות בצד הלקוח (CSAI) עם ניתוח סמני SCTE-35 ושילוב נגן מרובה פלטפורמות
פלטפורמת הזרמת וידאו נזקקה ליישם הזרקת פרסומות בצד הלקוח (CSAI) על פני יישומי אינטרנט, מובייל וטלוויזיות חכמות — המאפשרת חוויות פרסום מותאמות אישית ברמת המכשיר עם תמיכה מלאה באינטראקציה עם פרסומות (שכבות-על ניתנות ללחיצה, באנרים נלווים, כפתורי דילוג) שאותן הזרקה בצד השרת אינה יכולה לספק.
צינור איתות לסמני פרסומות SCTE-35 והכנסת טריילרים למדיה
חברת מדיה סטרימינג נזקקה לצינור עבודה אוטומטי ויציב להזרקת סמני פרסומות SCTE-35 לזרמי שידור חי ו-VOD, יחד עם היכולת להכניס טריילרים פרסומיים (pre-roll, mid-roll, ו-post-roll) במיקומים מדויקים בזמן — מה שמאפשר מונטיזציה בערוצי FAST, אירועים חיים, וספריות תוכן לפי דרישה.
שאלות נפוצות
MicrocosmWorks תכננה ארכיטקטורת עיבוד מקוטעת שבה Step Functions מתזמרות את ה-pipeline: פונקציות Lambda מפצלות סרטוני מקור לקטעים, AWS MediaConvert מטפל בטרנסקודינג בפועל ללא אילוצי זמן קציבה של Lambda, ו-Lambda סופית מחברת את הפלט. גישה היברידית זו שומרת על מודל העלות השרת פחות (serverless) תוך תמיכה בווידאו בכל אורך.
MicrocosmWorks מדדה הפחתת עלויות של 70-85% עבור עומסי עבודה של עיבוד וידאו מתפרצים בהשוואה להפעלת מופעי קידוד ייעודיים של EC2. ה-pipeline השרת פחות אינו כרוך בעלות כאשר הוא במצב סרק ומתרחב למאות משימות מקבילות בתקופות שיא, עם תמחור לפי דקה של AWS MediaConvert המבטל את הצורך להקצות קיבולת לשיא.
MicrocosmWorks הגדירה AWS Step Functions עם מדיניות ניסיון חוזר לכל שלב (per-step retry policies) ו-exponential backoff, המבטיחה ששלב טרנסקודציה כושל ינסה שוב אוטומטית מבלי להפעיל מחדש את כל ה-pipeline. כל שלב כותב תוצרי ביניים ל-S3, כך שהשחזור ממשיך מנקודת הבקרה המוצלחת האחרונה במקום לעבד מחדש מקובץ המקור.
MicrocosmWorks ביצעה אופטימיזציה ל-pipeline עבור מקרי שימוש כמעט בזמן אמת עם הפחתת "התחלה קרה" (cold start mitigation) באמצעות הקצאת מקביליות מראש (provisioned concurrency) בפונקציות Lambda קריטיות ו-MediaConvert reserved transcoding slots. עבור זרימות עבודה בשידור חי, ה-pipeline משיג זמן אחזור מקצה לקצה של 2-5 דקות מהעלאה ועד אספקה, המתאים לחילוץ קליפים והפצת תקצירים.
MicrocosmWorks בונה תשתית וידאו serverless בשיעורים של $25-$45 לשעה, כאשר pipeline שלם מבוסס MediaConvert הכולל תזמור Step Functions, ניהול מחזור חיים של S3 וניטור דורש בדרך כלל 250-400 שעות פיתוח. מודל התשלום לפי שימוש (pay-per-use) של הארכיטקטורה פירושו שהלקוחות משלמים רק עלויות AWS פרופורציונליות לנפח העיבוד בפועל שלהם.
מוכן לשנות את העסק שלך?
בואו נדון כיצד נוכל ליישם פתרונות דומים לאתגרים שלך.