ما هو Azure Service Fabric؟

مكتمل

لنبدأ ببعض التعريفات وجولة سريعة حول Azure Service Fabric. يجب أن تساعدك هذه النظرة العامة على تحديد ما إذا كان Service Fabric مناسبًا لحل الحوسبة الموزعة.

ما هي الحاوية؟

تعد الحاوية وحدة ذرية من البرامج التي تتضمن التطبيق وجميع تبعياته، مثل المكتبات وملفات التكوين، في بيئتها المعزولة التي تتضمن كل ما يلزم لتشغيل البرنامج في تلك البيئة. تعمل الحاويات مباشرةً أعلى النواة ولها طريقة عرض معزولة لنظام الملفات والموارد الأخرى. لا يعرف التطبيق الموجود في حاوية أي تطبيقات أو عملياتٍ أخرى خارج حاويته.

لماذا تستخدم الحاويات؟

يوفر نموذج الحاوية المزايا التالية:

  1. صغر الحجم: تستخدم الحاويات مساحة تخزين واحدة وإصدارات طبقة وتحديثات لزيادة الكفاءة.

  2. سريع: لا يتعين على الحاويات تشغيل نظام تشغيل كامل، حتى تتمكن من البدء بشكل أسرع - عادة في ثوان.

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

  4. إدارة الموارد: يمكن للحاوية أن تحد من الموارد الفعلية التي يمكن أن تستهلكها على مضيفها.

كيف تتم إدارة الحاويات؟

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

يقوم معظم المنسقين بأكثر من معالجة حالات التوزيع والفشل الأولية. كما يمكنهم التعامل مع الترقيات ومعالجة استهلاك الموارد والإدارة.

يتعلق تنسيق الحاوية بشكل أساسي بتحقيق والحفاظ على بعض حالات التكوين المطلوبة في البيئة.

تعد Cluster Resource Manager مكون النظام الذي يعالج التنسيق في Azure Service Fabric.

ما هي الخدمة الصغيرة؟

تشير تطبيقات الخدمات المصغرة وبنية الخدمات المصغرة إلى الخدمات الصغيرة والمستقلة والمقترنة بشكل غير محكم والتي تعمل معًا لتحقيق نتيجة.

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

لماذا نستخدم الخدمات المصغرة؟

يوفر نموذج الخدمات المصغرة المزايا التالية:

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

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

  • قابلية التوسع: يمكن تحجيم الخدمات بشكل مستقل، ما يتيح لك توسيع الأنظمة الفرعية التي تتطلب المزيد من الموارد دون تغيير حجم التطبيق بأكمله. يمكنك أن ترى كيف يتناسب هذا بشكل جيد مع الحاوية ونموذج تنسيق الحاوية.

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

ما هي الخدمات عديمة الحالة وذات الحالة؟

الخدمة عديمة الحالة هي خدمة يمكن فيها فهم كل طلب ورد بشكل منفصل. يمكنك تخيل خدمة حاسبة مبسطة، حيث ترسل عملية حسابية ليتم تنفيذها (2+2، على سبيل المثال) وتلقي إجابة واحدة (4). إذا كنت تريد إجراء عملية حسابية أخرى على تلك النتيجة (4 × 2، على سبيل المثال)، يمكنك إرسال طلب يدويا لحساب 4 × 2 وتلقي 8. ومع ذلك، لن تكون الخدمة على علم بأنك تستخدم نتيجة الحساب الأولي.

الخدمة ذات الحالة هي الخدمة التي يتناسب فيها كل طلب ورد مع سجل المعاملات التي تعرف الخدمة بها ويمكن الرجوع إليها. دعونا نستخدم مثال خدمة الحاسبة مرة أخرى، ولكن مع إصدار ذي حالة هذه المرة. تطلب إجراء العملية الحسابية 2+2، وتتلقى 4. هذه المرة، تطلب من الخدمة أخذ النتيجة السابقة والضرب في 2 (لنفترض أن بناء الجملة يبدو مثل Answer x 2). تتلقى 8 كاستجابة، كما فعلت في المثال الأول. ومع ذلك، هذه المرة، كانت خدمة الحاسبة على علم بأن نتيجة العملية السابقة (الإجابة) كانت 4.

لماذا نستخدم الخدمات عديمة الحالة وذات الحالة؟

يمكن أن يستخدم الحل الخاص بك الخدمات عديمة الحالة أو الخدمات ذات الحالة أو كليهما.

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

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

ما هو Azure Service Fabric؟

يدير Azure Service Fabric نظام الحوسبة الموزع ويجعل من السهل توزيع التطبيقات المعبئة في الحاوية وإدارتها، وتنفيذ بنية الخدمات المصغرة، والاستفادة من الخدمات القوية ذات الحالة بالإضافة إلى الخدمات عديمة الحالة. يوفر Service Fabric أدوات التطوير والعمليات، ودعم نماذج البرمجة المختلفة، وتنسيق الحاويات، وصحة نظام المجموعة ومراقبتها، والتحجيم التلقائي، والمزيد.

Diagram that shows the scope of Azure Service Fabric, including orchestration, programming models, automatic scaling, and more.

يقدم Service Fabric نموذجين مختلفين لأنظمة المجموعات، حسب تفضيلاتك. يتطلب منك نموذج نظام المجموعة القياسي إدارة جميع الموارد الأساسية لنظام المجموعة الخاص بك. يقوم نموذج نظام المجموعة المدار بتجريد هذه الموارد بعيدا، ويديرها Azure.

يمكنك إما إنشاء نظام المجموعة في مدخل Azure أو استخدام قوالب Azure Resource Manager.