Professional Documents
Culture Documents
الحوسبة دون خادم
الحوسبة دون خادم
مالحظة :كنتُ قد بحثتُ عن ترجم ٍة مناسب ٍة لعبارة ) (Serverlessوقد وجدتُ العديد من الترجمات المقترحة“ :الالّخوادم”“ ،التخلّي
عن الخوادم” ،بدون خادم“ ،الحوسبة الغير مرتكزة على خوادم” ،وغيرها؛ لكنّي رأيتُ أن أترجمها إلى عبارة “دون خادم”.
مل ّخص التدوينة :الحوسبة دون خادم ) (Serverless Computingوالتطبيقات دون خادم ) (Serverless Applicationsوما
بأسرع
ِ لمنتج ما أو خدمة أو تطبيق ،وتريد أن تصل بها إلى السوق
ٍ هو دون خادم ،أعتبر ُه العبًا خرافيًّا أنيقًا ،فمتى كانت لديك فكرة
تتشرب الحوسبة دون خادم والتطبيقات دون خادم.
ّ تجرب ثم
ت ممكن؛ فأنصحك بأن ّ وأخصر وق ٍ
ِ
دون خادم؟
مبدئيًا ،الحوسبة دون خادم تتي ُح لك بناء وتشغيل التطبيقات والخدمات دون الحاجة إلى التفكير بالخوادم؛ وليس -في الحقيقة -دون
الحاجة إلى خادم .التطبيقات دون خادم ال تتطلّب منك تجهيز ) (Provisionأو توسّع ) (Scaleأو إدارة ) (Manageأيًّا من
نوع من التطبيقات أو خدمات الناحية الخلفيّة (Backend Service).ستالحظ -عزيزي ي ٍ الخوادم .يُمكنك استخدامهما لبناء أ ّ
القارئ -أنّ كل ما يتطلّب تشغيل وتوسّع ووفرةٍ عالية) ، (High Availabilityستالحظ أنّه قد أزيح عن كاهلك.
خادم خامل) ، (Idleوال أن تقلق بشأن التحديثات األمنيّة لهذا الخادم أو تقلق بشأن
ٍ ي بامتياز؛ فال حاجة ألن تدفع لقاء
هذا األمر -ثور ٌّ
توفّره من عدمه .أنت -عزيزي القارئ -ستدفع -في هذا السياق -لقاء تنفيذ الدالّة البرمجيّة وحسب .
المطورون على المنتج األساسي بدالً من أن يقلقوا تجاه إدارة وتشغيل الخوادم أو بيئات
ّ ت دون خادم يعني أن ير ّكز بناء تطبيقا ٍ
المطورين وقتاً
ّ التشغيل ) (Runtimesسوا ًء كانت هذه الخوادم سحابيّة أو محليّة (On-Premises).إزاحة هذه الضغوط سيمن ُح
ت رائع ٍة وموثوق ٍة ) (Reliableتتوسّع متى تطلّب األمر.
مزيدًا وطاقةً ،يُمكن االستفادة منهما في تطوير منتجا ٍ
“المدا (Lambda)” -مثالً -وهي إحدى خدمات أمازون ) (AWSوما يشبهها مثل “دوا ّل قوقل ”) (Google Functionsو”دوا ّل
أزُ ور”) ، (Azure Functionsتتيح لك تنفيذ الشفرة البرمجيّة ) (Codeدون الحاجة إلى تجهيز أو إدارة الخوادم ذات العالقة؛ إذ
تدفع لقاء وقت الحوسبة ) (Compute Timeالذي تستهلكه ،ليس ث ّمة تكاليف للشفرة البرمجيّة الخاملة التي ال تعمل .ك ّل ما عليك
القيام به أن ترفع شفرتك البرمجيّة إلى هذه الخدمات وما يشبهها ث ّم ستقوم األخيرة بما هو مطلوب لتشغيل وتوسّع شفرتك البرمجيّة
بوفر ٍة عالية.
ي).
(صورة :توضيح آلليّة التوسّع بشك ٍل عمود ّ
طا“ :التوسّع بشك ٍل أفقي (Scale Out/Horizontal Scaling)”.هذا يعني بعض الشركات -بعد فترةٍ من الزمن -وجدت حالًّ وس ً
إضافة مجموعة من العتاد منخفض التكلفة جنبًا إلى جنب ومن ث ّم توزيع ضغط الحوسبة ) (Computing Loadبين هذا العتاد؛
ٌ
امتياز عن التوسّع بشك ٍل ت قويّة و ُمكلفة .التوسّع بشك ٍل أفقي لديه كنتيجةً لذلك ،ظهرت آالتٌ ذات ّ
قوة وكُلفة منخفضة بدالً من آال ٍ
عمودي ،ال شكّ أنّ التوسّع بشك ٍل أفقي يعتبر أسهل ،لكنّك قد تجد نفسك -يو ًما من األيّام -قد بلغتَ السقف (في التكاليف أو الضغط)
وبين راحتيك أغلى آلة يمكن لك شراؤها .التوسّع بشك ٍل عمودي وفّر عليك المال ،توسّع -عزيزي القارئ -حسب االحتياج ،توسّع
بشك ٍل ال نهائي متى أردت.
ي).
(صورة :توضيح آلليّة التوسّع بشك ٍل أفق ّ
بعد ذلك ،جاءت “البيئة اإلفتراضيّة ”) (Virtualizationأو “الحوسبة التخيّليّة”“ .اآللة اإلفتراضيّة” هي عبارة عن برمجيّة
ي شيء من تلقاء نفسها دون أنتحاكي الخوادم العتيقة ال ُمعتمدة على العتاد .قد نطرح سؤاالً هنا :أال يُمكن لهذه البرمجيّة أن تقوم بأ ّ
تحاكي الخوادم؟ ويبدو أن سبب قيامها بذلك هو أنّ هذا النموذج كان هو الذي يستخدمه الجميع.
“السحابة ”) (Cloudأتت الحقًا ،بدأت بما يس ّمى “البنية التحتيّة كخدمة (Infrastructure as a Service/IaaS)”.البنية
التحتيّة كخدمة ) (IaaSتض ّم مراكز بيانات ) (Data Centersضخمة وتجعل بينك وبين العتاد طبقة) ، (Layerوتتيح لك استخدام
اآلالت اإلفتراضيّة فقط .الحظ أنّ قابليّة التوسّع ) (Scalabilityباتت أسهل؛ ألنّه صار بإمكانك أن تج ّهز خواد ًما إفتراضيّة دون
وتحرك بسرعة.ّ فورا و دون الحاجة إلى تخمين متع ّمق .احفظ مالك -عزيزي القارئ،-
القلق بشأن العتاد ،كما ويُمكنك القيام بذلك ً
أتت “المنصّة كخدمة ”) (Platform as a Service/PaaSبعد البنية التحتيّة كخدمة ،من أمثلتها Herokuو AWS Elastic
،Beanstalkبواسطتها أصبح تجهيز الخوادم مؤتمتًا .إذا استطعت إتقان منصّة مقدّم الخدمة) ، (Vendorفسيكون نشر
ي للخوادم؛ إذ أنّه ليس عليك أن تف ّكر فيها
)(Deployالتطبيق وتوسعته أسهل بمراحل ،كان هذا ّأول انفصال عن النموذج التاريخ ّ
كثيرا.
ً
ت ما هنا“ .ديڤ أوبس ”) (DevOpsو إعداد الحاويات يعتبران “إعداد الحاويات ”) (Containerizationانتشرت في وق ٍ
موضوعان متداوالن .إذ تعتبر إعداد الحاويات طريقة أكفأ لتجهيز البيئة اإلفتراضيّة .إذا كنت تدرك أهميّة اآلالت اإلفتراضيّة؛ حت ًما
ستدرك أهميّة الحاويات(Containers).
بعد ك ّل ما مضى ،جاءت فكرة ُ “دون خادم ”) (Serverlessواألفكار التي تدور في فلكها بمعماريّ ٍة تستبدل اآلالت اإلفتراضيّة
بمجرد طلبها وتختفي مباشرةً بعد استخدامها.ّ الزوال ) (Ephemeralتظهر للوجود بقوةِ حوسب ٍة سريعة ّ
مطول ّ
ّ والتي تعمل بشك ٍل