تصميم للعمليات

مكتمل
التحول إلى اليسار في العمليات لتوقع ظروف الفشل.

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

تدير جامعة Contoso تطبيق ويب مبني على الخدمات المصغرة التي توفر خدمات تعليمية، مثل الفصول الدراسية عبر الإنترنت، لهيئة التدريس والطلاب في Contoso. تم إنشاء حمل العمل على Azure App Service وقاعدة بيانات Azure SQL ومعرف Microsoft Entra وAzure Key Vault ناقل خدمة Azure وAzure Monitor وAzure DevOps.

تنفيذ مراقبة قوية

إنشاء أنظمة يمكن ملاحظتها يمكنها ربط بيانات تتبع الاستخدام.

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

تحدي Contoso

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

تطبيق النهج والنتائج

  • يقوم فريق حمل العمل بضبط المكونات لالتقاط السجلات والمقاييس باستخدام Application Insights وتكوين التسجيل لجميع خدمات النظام الأساسي. تتم إعادة توجيه جميع السجلات إلى مساحة عمل Azure Monitor لحمل العمل.
  • يمكن استخدام البيانات في مساحة عمل AzM لتحليل صحة المكونات الفردية للحل والتدفقات المجمعة وصحة الحل.
  • يساعد ربط الإدخالات التي تنتمي إلى نفس الطلب عبر المكونات والمستويات الفريق على تحديد صحة حمل العمل وتسهيل عمليات استكشاف الأخطاء وإصلاحها الخاصة بهم.

توقع الأعطال المحتملة والسلوك الشاذ

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

يمكن إعلام مهندسي موثوقية الموقع على الفور حتى يتمكنوا من التخفيف من الحوادث المستمرة في الموقع المباشر والتخفيف بشكل استباقي من حالات الفشل المحتملة التي تحددها التنبيهات التنبؤية قبل أن تصبح حوادث مباشرة.

تحدي Contoso

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

تطبيق النهج والنتائج

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

اختبار مخاطر الموثوقية

محاكاة حالات الفشل وتشغيل الاختبارات في بيئات الإنتاج وما قبل الإنتاج.

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

تحدي Contoso

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

تطبيق النهج والنتائج

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

‏‫اختبر معلوماتك

1.

صواب أم خطأ: مثال على جعل حمل العمل قابلا للمراقبة هو وضع علامة على التطبيق لإرسال بيانات القياس عن بعد.

2.

ما هي سمة استراتيجية التنبيه المصممة جيدا؟

3.

ما هي إحدى الطرق التي يمكن أن تثبت بها شركة Contoso أن حمل العمل لديها يمكن أن يعمل في حالة متدهورة؟