💻

محاكي البنية بدون خادم

تصور البدء البارد لـ Lambda والتوسع التلقائي والدفع لكل استدعاء في الوقت الفعلي

💻 جرب الآن

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

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

لماذا هذا مهم؟ البنية بدون خادم تشغل التطبيقات الحديثة من واجهات API إلى خطوط أنابيب البيانات. AWS Lambda وحده يعالج تريليونات الاستدعاءات شهرياً.

📖 تعمق أكثر

تشبيه 1

فكر في الخوادم التقليدية مثل امتلاك سيارة - فأنت تدفع التأمين والغاز والصيانة سواء كنت تقود السيارة أم لا. بدون خادم يشبه طلب سيارة أجرة: أنت تدفع فقط مقابل الرحلة. بداية باردة تنتظر وصول سيارة الأجرة؛ البداية الدافئة هي عندما تكون السيارة متوقفة بالفعل خارج باب منزلك.

تشبيه 2

تخيل مطبخ مطعم يستحضر الطهاة بطريقة سحرية عند وصول الطلبات ويرسلهم إلى المنزل عند انتهاء فترة الذروة. البداية الباردة هي وقت ارتداء المئزر وغسل اليدين؛ البداية الدافئة تعني أن الشيف موجود بالفعل على الموقد. يشبه التزامن المقدم إبقاء طاقم العمل على أهبة الاستعداد استعدادًا لوجبة العشاء.

🎯 نصائح المحاكي

مبتدئ

أرسل الطلبات وشاهد الحاويات وهي تدور (بداية باردة) ثم تعيد استخدامها (بداية دافئة).

متوسط

قارن أوقات تشغيل Java وGo لمعرفة الاختلافات الكبيرة في البداية الباردة.

خبير

قم بتعيين Provisioned Concurrency وVPC Penalty لتحسين مقايضات تكلفة زمن الوصول.

📚 المصطلحات

FaaS
الوظائف كخدمة - نموذج تنفيذ سحابي حيث يقوم الموفر بتشغيل التعليمات البرمجية الخاصة بك استجابةً للأحداث دون مطالبتك بإدارة الخوادم. تُعد AWS Lambda وGoogle Cloud Functions وAzure Functions المنصات الرئيسية.
Cold Start
عقوبة زمن الوصول عندما يجب تهيئة حاوية وظيفة جديدة من البداية. يتضمن تنزيل التعليمات البرمجية وبدء وقت التشغيل وتنفيذ منطق التهيئة. عادةً ما تكون 100 مللي ثانية-2 ثانية لمعظم أوقات التشغيل، ولكن يمكن أن تتجاوز 10 ثانية لـ Java في VPC.
Warm Start
إعادة استخدام حاوية تمت تهيئتها بالفعل لاستدعاء لاحق. تتخطى عمليات التشغيل الدافئة مرحلة التهيئة تمامًا، مما يقلل زمن الوصول إلى وقت تنفيذ الوظيفة فقط - عادةً أقل من 100 مللي ثانية.
Concurrency
عدد مثيلات الوظائف التي تعمل في وقت واحد. يتطلب كل تنفيذ متزامن حاوية خاصة به. تبلغ التزامن الافتراضي لحساب AWS Lambda 1000، وقابلة للتوسع إلى عشرات الآلاف.
Provisioned Concurrency
مثيلات الوظائف التي تمت تهيئتها مسبقًا والتي تقضي على عمليات التشغيل الباردة لأحمال العمل الحساسة لزمن الاستجابة. أنت تدفع مقابل السعة المتوفرة سواء تم استخدامها أم لا - وهي عبارة عن مقايضة بين زمن الوصول والتكلفة.
Reserved Concurrency
مجموعة مضمونة من التزامن المخصص لوظيفة محددة، مما يضمن أن لديها القدرة دائمًا حتى عندما تستهلك الوظائف الأخرى حد ​​الحساب. يعمل أيضًا كحد أقصى.
Invocation
تنفيذ واحد لوظيفة بدون خادم. وحدة الفوترة الأساسية — تدفع لكل طلب (0.20 دولارًا أمريكيًا لكل مليون) بالإضافة إلى كل جيجابايت في الثانية من وقت الحوسبة (0.0000166667 دولارًا أمريكيًا).
Execution Duration
الوقت الذي يبدأ فيه معالج الدالة الخاص بك في التنفيذ حتى يعود أو تنتهي مهلته. تتم الفاتورة بزيادات قدرها 1 مللي ثانية. الحد الأقصى هو 15 دقيقة (900 ثانية) لـ AWS Lambda.
Timeout
الحد الأقصى للوقت المسموح بتشغيل الوظيفة قبل إنهائها قسريًا. يؤدي تعيينه إلى مستوى منخفض للغاية إلى حدوث حالات فشل زائفة؛ ارتفاع كبير جدًا في إهدار المال على الدعوات المعلقة.
VPC Penalty
زمن انتقال إضافي لبدء التشغيل على البارد (تاريخيًا من 6 إلى 10 ثوانٍ، والآن حوالي ثانية واحدة مع Hyperplane ENI) عند تكوين وظيفة Lambda للوصول إلى الموارد داخل Virtual Private Cloud.
Lambda Layer
حزم المكتبات القابلة لإعادة الاستخدام، أو ملحقات وقت التشغيل، أو التكوين الذي يمكن للوظائف الرجوع إليه. تضيف كل طبقة إلى وقت البدء البارد ولكنها تتيح مشاركة التعليمات البرمجية عبر الوظائف.
Init Duration
الوقت المستغرق في تنفيذ التعليمات البرمجية خارج وظيفة المعالج (تهيئة النطاق العام). تم الإبلاغ عنها بشكل منفصل في سجلات Lambda. تؤدي التهيئة المكثفة (تحميل نماذج ML وتجمعات اتصال قاعدة البيانات) إلى زيادة عمليات التشغيل الباردة.

🏆 شخصيات رئيسية

Tim Wagner (2014)

قاد إطلاق AWS Lambda كمدير عام، وأنشأ أول منصة حوسبة تجارية كبيرة بدون خادم والتي حددت نموذج FaaS

Werner Vogels (2014)

Amazon CTO الذي دافع عن البنى المبنية على الأحداث وبدون خادم، ونشر فلسفة "لا يوجد خادم أسهل في الإدارة من عدم وجود خادم"

Kenton Varda (2017)

تم إنشاء Cloudflare Workers باستخدام وحدات V8 المعزولة بدلاً من الحاويات، مما يحقق عمليات تشغيل باردة بأقل من مللي ثانية وإعادة تعريف الحوسبة المتطورة بدون خادم

Eric Jonas (2019)

باحث في جامعة كاليفورنيا في بيركلي شارك في تأليف الورقة المؤثرة "تبسيط البرمجة السحابية: وجهة نظر بيركلي حول الحوسبة بدون خادم" والتي تحدد أجندة البحث بدون خادم

Guillermo Rauch (2015)

تم إنشاء Vercel وNext.js، لنشر النشر بدون خادم لأطر عمل الواجهة الأمامية وإتاحة الوصول إلى الوظائف بدون خادم لمطوري الواجهة الأمامية

Joe Emison (2016)

من أوائل المبشرين بدون خادم ومدير التكنولوجيا التنفيذي الذي أظهر تصميمات بدون خادم على مستوى المؤسسة، مما أثبت قابلية FaaS للاستمرارية بما يتجاوز حالات الاستخدام البسيطة

Ajay Nair (2019)

قائد منتج AWS Lambda الذي قاد الميزات الرئيسية بما في ذلك Provisioned Concurrency وملحقات Lambda ودعم صورة الحاوية

🎓 مصادر التعلم

💬 رسالة للمتعلمين

تمثل الحوسبة بدون خادم أحد أكبر التحولات في كيفية إنشاء البرامج - بدءًا من توفير الخوادم قبل أشهر وحتى كتابة وظيفة تتوسع من صفر إلى آلاف المثيلات في ثوانٍ. إن البداية الباردة التي تراها في هذه المحاكاة هي نفس الظاهرة التي يقوم المهندسون في Netflix وAirbnb وآلاف الشركات الناشئة بتحسينها كل يوم. إن فهم المفاضلات بين التكلفة وزمن الوصول والتزامن سيجعلك مهندسًا أفضل بغض النظر عن موفر السحابة الذي تختاره. السحابة ليست سحرية، إنها حاسوب شخص آخر، تم تجريده ببراعة.

ابدأ الآن

مجاني، بدون تسجيل

ابدأ الآن →