CCL Platform Infrastructure: الفيديو لايف والتخزين فالسيرفرات ديالنا
هادا هو الـ Backend اللي كيتشاركوه CCL و Schoolaris و Polypro للحصص لايف، التسجيلات وملفات الدروس. فيه الفيديو بـ LiveKit مع ربعة ديال workers للتسجيل، تخزين S3 متعدد المستأجرين (multi-tenant) على MinIO، وروابط موقعة صالحة لمدة محدودة باش يتشافو الفيديوهات. كل منصة كتلقى الحصص لايف داخل الصفحات ديالها، التسجيلات كيرجعو كإعادة، والملفات كيتفحصو قبل ما يتخزنو.
صاوبتو وكنصاينو كمطور full-stack فـ CCL، فالسيرفرات ديال الشركة.
الزبون
CCL (Centre de Compétences et Leadership) مركز تكوين فمراكش. فـ CCL كنصاوب وكنصاين بزاف ديال المنصات التعليمية، منهم المواقع ديال CCL، و Schoolaris، منصة الدعم المدرسي أونلاين للتلاميذ المغاربة، و Polypro Academy، منصة باش تتعلم اللغات. CCL و Schoolaris و Polypro فيهم الفيديو لايف، يعني الثلاثة كانو محتاجين الفيديو، التسجيل والتخزين.
شنو كان محتاج
الحصص لايف ديال CCL كانت كتدوز فليانات Zoom، والتسجيلات كتبقى فالأداة ديال الاجتماعات، ماشي حدا البرنامج ديال المتعلم. الهدف كان نرجعو الحصص لداخل المنصات، والفيديو والتسجيلات يكونو فالسيرفرات ديال الشركة، ماشي عند خدمة كتخلصها بالدقيقة.
باش تستضيف الفيديو لايف بوحدك، ما يكفيش تنصب سيرفر وصافي. التسجيل تقيل: كل تسجيل كيشغل Chrome كامل بلا واجهة، و worker واحد كان كيهز تقريبا من 5 حتى 8 قبل ما تبدا الماكينة تعيا. الحصة المسجلة كتاخد تقريبا 1 GB فالساعة، الملفات اللي كيتصيفطو خاصهم يتفحصو قبل ما يتخزنو، والفيديوهات خاصهم يدوزو بروابط ما تبقاش مفتوحة ديما.
شنو صاوبت
LiveKit مورا Caddy، مع TURN
السيرفر ديال LiveKit و Redis و TURN خدامين فـ Docker، و Caddy كيتكلف بـ HTTPS. و TURN على TLS كيخلي التلاميذ اللي فشبكات مسدودة (المدرسة، الخدمة، الموبايل) يدخلو حتى هوما، والـ API ديالنا هي اللي كتصاوب القاعات وكتوقع رمز دخول قصير المدة لكل تلميذ.
ربعة ديال workers للتسجيل
التسجيلات كيديروها ربعة ديال workers ديال LiveKit Egress كيتشاركو طابور Redis واحد، وكل واحد عندو المجلد المؤقت ديالو. ملي كان المجلد مشترك، الـ workers ولاو كيمسحو الـ sockets ديال بعضياتهم: بان بحال مشكل ديال القدرة، وما كانش.
حد محسوب باختبار الضغط
فاختبار ضغط فماي 2026 على سيرفر الإنتاج اللي فيه 80 نواة، 24 تسجيل فنفس الوقت خداو تقريبا نص الـ CPU، وكل الملفات كاملين؛ و 30 خدمو ولكن بلا حتى هامش. داكشي علاش الـ API ما كتبداش التسجيل رقم 25 بوحدها، عمرها ما كتوقف تسجيل خدام، والإدارة تقدر تتجاوز هاد الحد يدويا.
قاعات ما كتسدش مع أول انقطاع
القاعات كتصاوبها الـ API، ماشي ملي يدخل أول واحد، وكتبقى مفتوحة 15 دقيقة كتسنى أول واحد يدخل، و 5 دقايق من بعد ما يخرج آخر واحد. إلا طاح الويفي عند الأستاذ، الحصة والتسجيل ديالها ما كيوقفوش.
تخزين متعدد المستأجرين على MinIO
ملفات الدروس والتسجيلات ديال كل منصة كيمشيو لتخزين S3 على MinIO. و ClamAV كيفحص كل ملف قبل ما يتخزن، والفيديوهات كيتحولو لـ HLS متكيف باش يتشافو أونلاين.
روابط موقعة كيسالي الوقت ديالها
الفيديوهات والملفات كيوصلو للمتعلمين بروابط موقعة كيسالي الوقت ديالها، عوض روابط عمومية دايمة.
شنو ولّا يقدر يدير
الحصص لايف والتسجيلات وملفات الدروس كيدوزو على سيرفرات متحكمين فيها: فكونتينرات Docker مورا Caddy مع HTTPS أوتوماتيكي، وClamAV كيفحص كل ملف قبل ما يتخزن، والفيديوهات كيتحولو لـ HLS متكيف.
دابا CCL و Schoolaris و Polypro كيديرو الحصص لايف داخل المنصات ديالهم، على نفس البنية المشتركة، بلا ما يصيفطو التلاميذ لليانات ديال الاجتماعات. التسجيلات كتمشي لتخزين متحكمة فيه الشركة وكترجع كإعادة. واختبار الضغط عطانا حد معروف، 24 تسجيل فنفس الوقت، ولكن غير على هاد الماكينة: إلا تبدل السيرفر، خاص الاختبار يتعاود.
مقالات مرتبطة
مشاريع أخرى
Polypro Academyالمتعلمين كيعرفو المستوى ديالهم فدقايق، وكيتمرنو على الهضرة مع محاور بالذكاء الاصطناعي فأي وقت، ومن بعد كياخدو شهادات أي واحد يقدر يتأكد منها أونلاين. المؤسسات الشريكة كتاخد مفاتيح الترخيص، والمسوقين بالعمولة كيتخلصو على العمولة ديالهم.
CCL E-Learningالمتعلمين كيشريو كبسولات الفيديو وكيتبعوها على حسابهم، بالخلاص أونلاين عبر Stripe والدخول برابط سحري (magic link)، على نفس النظام اللي خدامين بيه باقي الخدمات ديال CCL.
Schoolarisالواليدين كيتبعو التقدم ديال كل ولد وكيخلصو أونلاين (Stripe ولا CMI)، الأساتذة كيقريو الحصص لايف من لوحة التحكم، والفريق كيسير المبيعات والحسابات والمداخيل فبلاصة وحدة.
