تجاوز إلى المحتوى
اذهب للخلف

مقدمة في الحوسبة بلا خوادم على AWS

نشر فى:  at  ٠٥:٠٠ م

مقدمة في الحوسبة بلا خوادم على AWS

قدّمتُ في 26 أيلول 2026 محاضرة في اللقاء الحضوري التاسع لـمجتمع مستخدمي AWS في دمشق (AWS User Group Damascus). ألخّص في هذه التدوينة أهم ما جاء فيها، مع روابط الكود لتجرّب الأمثلة بنفسك.

📑 الشرائح: مقدمة في الحوسبة بلا خوادم على AWS

ما هي الحوسبة بلا خوادم؟

تمثّل الحوسبة بلا خوادم (Serverless) نهاية مسار تطوّر استمر عشرين عاماً: بدأ بالخوادم الفيزيائية، ثم الأجهزة الافتراضية (Virtual Machines)، ثم الحاويات (Containers)، ووصل الآن إلى الكود وحده. وباختصار: لا تجهّز الخوادم ولا تحدّثها ولا توسّعها بنفسك، وتدفع فقط حين يعمل الكود الخاص بك.

تتميّز الخدمة بلا خوادم بأربع سمات: لا إدارة للخوادم، وتوسّع تلقائي (Automatic Scaling) يصل إلى الصفر أيضاً، ودفع حسب الاستخدام (Pay-per-use)، وتشغيل قائم على الأحداث (Event-driven). وتغيّر السمة الرابعة طريقة التصميم نفسها: توقّف عن التفكير في عمليات تنتظر، وفكّر في دوال تستجيب للأحداث.

ولا تعني الحوسبة بلا خوادم خدمة Lambda وحدها، إذ يوجد خيار بلا خوادم لكل طبقة: API Gateway للواجهات، وDynamoDB للبيانات، وS3 للتخزين، وSQS أو EventBridge للرسائل.

متى نستخدمها؟

تتفوّق الحوسبة بلا خوادم حين يشبه منحنى الزيارات سلسلة جبال: الواجهات البرمجية ذات الزيارات المتقلّبة، ومعالجة الأحداث، والمهام المجدولة، والكود الرابط بين الخدمات، والنماذج الأولية (MVP). أما المهام التي تتجاوز 15 دقيقة، والمسارات الحساسة للتأخير حيث يضرّ الإقلاع البارد (Cold Start)، والحِمل العالي الثابت، والعمل الذي يحتفظ بالحالة (Stateful)، ومعالجات GPU، فتستحق كلها تفكيراً أعمق.

قاعدة عامة: إذا كانت الزيارات متقلّبة فاختر الحوسبة بلا خوادم. وإن كانت ثابتة فقارن تكلفتها بالحاويات، واختر الأرخص تشغيلاً لا الأرخص في الفاتورة فقط.

الأمثلة العملية

  1. واجهة REST (API Gateway ← Lambda ← DynamoDB) في نحو 20 سطراً، بلا Express ولا listen(). نصيحة: أنشئ عملاء SDK خارج دالة المعالجة (Handler) ليُعاد استخدامهم في الاستدعاءات الدافئة (Warm Invocations).
  2. الاستجابة لرفع ملف (S3 ← Lambda ← DynamoDB): ترفع ملف JSON إلى حاوية S3 فتظهر السجلات في DynamoDB خلال ثوانٍ، بلا استطلاع (Polling) ولا مهام cron.

تجد كود المثالين في aws-serverless-sample-webapp، ويمكنك نشره باستخدام SAM أو تجربة التطبيق المباشر.

  1. بوت تيليغرام: يرسل تيليغرام كل رسالة إلى خطّاف ويب (Webhook)، فتستدعي API Gateway دالة Lambda تردّ بمعلومة عن الحوسبة بلا خوادم. ترفض الدالة أي طلب لا يحمل ترويسة الرمز السري، فلا يستطيع استدعاءها غير تيليغرام، ولا يكلّف البوت شيئاً بين المحادثات. تجد الكود في aws-serverless-telegram-bot-typescript، ويمكنك مراسلة البوت.

أهم الخلاصات

ابدأ صغيراً وانقل مهمة cron واحدة أو واجهة برمجية واحدة. تحتاج مع sam init ثم sam deploy --guided إلى نحو عشرين دقيقة فقط لتنتقل من حساب فارغ إلى واجهة تعمل فعلاً.


اقترح تعديل

المقالة التالية
تأمين التطبيقات المبنية على الذكاء الاصطناعي (2 من 3): تطبيق استراتيجيات الدفاع التقنية