كيفية تخطي API7 Gateway للاستثناءات باستخدام استراتيجيات التوفر العالي

Zhiyuan Ju

Zhiyuan Ju

April 8, 2024

Products

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

تستعرض هذه المقالة API7 Enterprise، وهي منصة لإدارة واجهات API على مستوى المؤسسات مبنية على المشروع المفتوح المصدر Apache APISIX، وتركز على الآليات التي توفرها طبقة البيانات (API7 Gateway) للاحتفاظ بالتكوين ومواصلة معالجة الطلبات في بعض حالات انقطاع الاتصال بطبقة التحكم أو إعادة تشغيل المثيل. يمكن لهذه الآليات تقليل أثر بعض الأعطال، لكنها لا تضمن استقرار الخدمة أو استمرارها في كل سيناريو.

هيكل التوفر العالي على مستوى المؤسسات

تناولنا في مناقشتنا السابقة حول حلول API7 لخدمات API المتينة نشر المكونات والبنية العامة لـ API7 Enterprise. يتيح التصميم عديم الحالة استعادة المثيلات وجدولة الموارد بصورة مرنة، ويمكن أن يساعد على تقليل أثر بعض أعطال الشبكة أو الأجهزة. أما توفر الخدمة المحقق فيعتمد على بنية النشر، وتكرار المكونات، والبنية التحتية التابعة، وعمليات العميل.

التوفر العالي لـ API7 Enterprise

استراتيجيات التوفر العالي لـ API7 Enterprise

استنادًا إلى قدرات المشروع المفتوح المصدر Apache APISIX، يتضمن API7 Gateway آليات للاحتفاظ بآخر تكوين معروف واستعادته عند انقطاع الاتصال بطبقة التحكم أو إعادة تشغيل المثيل. تساعد هذه الآليات على تقليل مخاطر فقدان التكوين وانقطاع المعالجة، وتنقسم إلى ثلاث مراحل:

  1. استعادة التكوين عند بدء التشغيل؛

  2. مزامنة التكوين الكاملة والتخزين المحلي؛

  3. تغييرات التكوين الديناميكية والاستمرارية.

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

استعادة التكوين عند بدء التشغيل

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

في الحالات الأكثر تطرفًا، يمكنك تغيير ملفات التكوين المحلية للمثيل، والتي يمكن استخدامها كتكوين بدء تشغيل لـ API7 Gateway.

مزامنة التكوين الكاملة والتخزين المحلي

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

تغييرات التكوين الديناميكية والاستمرارية

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

تصميمات للتعامل مع الحالات القصوى

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

الخلاصة

يوفر API7 Enterprise آليات توفر عالٍ لعمليات النشر التي يديرها العميل، بما في ذلك استعادة التكوين والمزامنة الكاملة والتخزين المحلي واستمرار تحديث التكوين. يمكن لهذه الآليات تقليل أثر بعض حالات فشل طبقة التحكم أو إعادة تشغيل المثيلات، لكن توفر الخدمة المحقق يعتمد على بنية النشر لدى العميل، وتكرار المكونات، وتبعيات البنية التحتية، وعمليات التشغيل.

توفر API7 Enterprise آليات توفر عالٍ لعمليات النشر التي يديرها العميل. يمكن لهذه الآليات تقليل أثر الأعطال، لكن توفر الخدمة المحقق يعتمد على بنية النشر لدى العميل، وتبعيات البنية التحتية، وعمليات التشغيل.

Tags:
Share article link