ما هو AWS Lambda؟
AWS لامدا هي خدمة الحوسبة السحابية من Amazon Web Services التي تتيح لك الرموز استجابة للأحداث تشغيل - دون الحاجة إلى إعداد أو إدارة خادم.
بمصطلحات بسيطة، كل ما عليك فعله هو تحميل الكود الخاص بك وLambda تلقائيًا:
يخصص الموارد اللازمة
تنفيذ الكود.
يدير التوسع
ويتم حساب التكلفة فقط بناءً على وقت التنفيذ الفعلي
الوثائق الرسمية: AWS Lambda – نظرة عامة
هندسة تنفيذ AWS Lambda
يستخدم Lambda في وقت التشغيل نموذجًا معزولًا يسمى بيئة التنفيذ إنه يستخدم دالة تم إنشاؤها بشكل منفصل لكل دالة.
تتضمن هذه البيئة المكونات التالية:
بيئة التشغيل: يتضمن مترجمًا أو JIT لـ Python وNode.js وJava وGo وC# وما إلى ذلك.
وظيفة المعالج: نقطة الدخول الرئيسية للكود الذي يستدعيه AWS عند حدوث حدث ما.
كائن الحدث: إدخال البيانات من مصدر مثل S3 أو API Gateway أو SNS أو SQS أو Kinesis
كائن السياق: يتضمن معلومات حول الجدولة والموارد والسجلات
الوثائق الرسمية: بيئة تنفيذ Lambda ودورة الحياة
دورة الحياة في AWS Lambda
تحتوي كل دالة Lambda على ثلاث حالات رئيسية:
مرحلة التهيئة: إنشاء بيئة تنفيذ جديدة (التهيئة) وتحميل الوحدات النمطية
مرحلة الاستدعاء: تنفيذ الكود استجابة لحدث
مرحلة التجميد/إعادة الاستخدام: الحفاظ على البيئة في وضع السكون لإعادة الاستخدام (تقليل بدء التشغيل البارد)
هذه الآلية تسبب يستجيب لامدا في ميلي ثانيةلأنه إذا وصلت الطلبات اللاحقة إلى نفس الوظيفة، فإن AWS تعيد استخدام البيئة السابقة.
التوثيق: دورة حياة لامدا
الهندسة المعمارية الموجهة بالأحداث مع Lambda
يتم استخدام Lambda عادةً جنبًا إلى جنب مع خدمات AWS الأخرى لإنشاء بنية تعتمد على الأحداث.
على سبيل المثال:
S3 → لامدا: تنفيذ الكود عند تحميل الملف
بوابة API → Lambda: بناء واجهة برمجة تطبيقات REST بدون خادم
تدفقات DynamoDB → Lambda: تنفيذ مشغل عند حدوث تغييرات في البيانات
CloudWatch → Lambda: الرد التلقائي على التنبيهات
الفوائد الرئيسية لـ AWS Lambda
1. لا حاجة لخادم (إدارة كاملة)
لا تحتاج إلى إعداد أو إدارة أي خوادم أو أنظمة تشغيل أو بنية تحتية. AWS تقوم بكل شيء تلقائيًا.
التوثيق: بيئة تنفيذ لامدا
2. ادفع فقط بناءً على تنفيذ الكود
مع Lambda، تدفع فقط مقابل الوقت الذي يتم فيه تشغيل الكود الخاص بك.
هذا النموذج الدفع مقابل التنفيذ إنه يوفر الكثير من المال - خاصة بالنسبة للمشاريع ذات الطلبات المتغيرة.
التوثيق: تسعير AWS Lambda
3. قابلية التوسع التلقائية
يتم قياس Lambda تلقائيًا استجابةً لعدد الطلبات.
إذا قام ألف مستخدم بتقديم طلبات في نفس الوقت، فسوف يوفر Lambda الموارد المطلوبة دون أي تكوين إضافي.
التوثيق: التوسع والتزامن في لامدا
4. دعم لغات البرمجة المختلفة
يدعم Lambda لغات متعددة، بما في ذلك:
بايثون
نود.جي اس
جافا
C# (.NET)
يذهب
روبي
وحتى وقت التشغيل المخصص للغات أخرى
التوثيق: لغات برمجة لامدا
5. التكامل الكامل مع خدمات AWS الأخرى
تم دمج AWS Lambda بشكل كامل مع خدمات AWS الأخرى مثل S3، DynamoDB، API Gateway، SNS، SQS وCloudWatch لقد تم دمجه.
على سبيل المثال، يمكنك تعيين وظيفة Lambda لتشغيلها تلقائيًا عند تحميل ملف إلى S3.
التوثيق: دمج AWS Lambda مع خدمات AWS الأخرى
كيف تعمل AWS Lambda
تتضمن خطوات تنفيذ وظيفة في Lambda ما يلي:
كتابة الكود (الوظيفة) بإحدى اللغات المدعومة
تعريف مُحفِّز الحدث مثل طلب HTTP عبر بوابة API، أو التغيير في قاعدة بيانات DynamoDB
نشر في وحدة تحكم AWS Lambda
التنفيذ الآلي والقابل للتطوير ردا على الأحداث
التوثيق: استدعاء وظائف AWS Lambda
الاستخدامات الشائعة لـ AWS Lambda
تشغيل الواجهة الخلفية دون الحاجة إلى خادم
المعالجة في الوقت الفعلي
التفاعل مع الأحداث في S3 أو DynamoDB
معالجة الصور أو الفيديو
إنشاء واجهات برمجة التطبيقات بدون خادم مع بوابة واجهة برمجة تطبيقات أمازون
المراقبة والإشعارات الآلية عبر CloudWatch
إذا كنت تخطط لتشغيل مشروعك على البنية التحتية الخالية من الخوادم من AWS، فيمكنك استخدام خدمات ITPiran السحابية 👇
شراء خدمة AWS من ITPiran
نصائح تقنية وتحسينات Lambda
تحسين وقت تنفيذ الوظيفة عن طريق تقليل حجم التبعيات.
من متغيرات البيئة استخدم لضبط المعلمات الحساسة.
سجلات مع سجلات Amazon CloudWatch يفحص.
من طبقات لامدا استخدم لمشاركة المكتبات بين الوظائف.
استخدام التزامن المُجهزتقليل وقت التأخير (البدء البارد).
التوثيق: تحسين الأداء لـ AWS Lambda
مقارنة بين AWS Lambda وEC2
| ميزة | AWS لامدا | أمازون EC2 |
|---|---|---|
| إدارة الخادم | بدون خادم تمامًا | يتطلب الإدارة والصيانة |
| نموذج الدفع | بناءً على وقت تنفيذ التعليمات البرمجية | بناءً على طول المدة التي ظل فيها الخادم قيد التشغيل |
| قابلية التوسع | تلقائي وفورى | يتطلب التوسع التلقائي |
| تطبيق مناسب | أتمتة واجهة برمجة التطبيقات (API) القائمة على الأحداث | مواقع الويب والتطبيقات وقواعد البيانات |
توثيق EC2: وثائق Amazon EC2
خاتمة
خدمة AWS لامدا إنها واحدة من أفضل أدوات أمازون للتنفيذ السريع والقابل للتطوير ومنخفض التكلفة للكود دون الحاجة إلى خادم.
يعد Lambda خيارًا مثاليًا للمشاريع التي تتطلب استجابة في الوقت الفعلي ومرونة عالية.
إذا كنت تخطط لإطلاق مشروعك باستخدام البنية التحتية لـ AWS، فيمكنك استخدام خدماتنا السحابية.
شراء AWS / Amazon Web Services من ITPiran









