فهم هندسة الفوضى والمرونة

قبل البدء في استخدام Azure Chaos Studio، من المفيد فهم مفاهيم هندسة موثوقية الموقع الأساسية التي يتم تطبيقها.

ما المرونة؟

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

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

يجب أن تخطط التطبيقات والخدمات لمشكلات مثل:

  • انقطاع الخدمة.
  • اضطرابات في التبعيات المعروفة وغير المعروفة.
  • تحميل مفاجئ غير متوقع.
  • زمن الانتقال في جميع أنحاء النظام.

يجب تصميم التطبيقات والخدمات للتعامل مع الفشل وتقوية ضد الاضطرابات.

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

ما هي هندسة الفوضى وحقن الأخطاء؟

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

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

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