خطوات الاستخدام
**الخطوة 1: فهم اتفاقية مستوى الخدمة (SLO)** اتفاقية مستوى الخدمة (SLO) هي النسبة المئوية للطلبات الناجحة التي يجب أن يحققها النظام خلال فترة زمنية معينة. على سبيل المثال، SLO بنسبة 99.9% يعني أن 99.9% من الطلبات يجب أن تكون ناجحة، ويمكن أن تفشل 0.1% فقط. هذه النسبة تحدد جودة الخدمة التي تلتزم بها تجاه المستخدمين. في هذه الحاسبة، تدخل قيمة SLO كنسبة مئوية (مثل 99.9).
**الخطوة 2: إدخال إجمالي عدد الطلبات (Total Requests)** أدخل العدد الإجمالي للطلبات المتوقعة خلال الفترة الزمنية المحددة (شهر، ربع سنة، إلخ). هذا الرقم يمثل حجم حركة المرور أو استخدام النظام. كلما زاد عدد الطلبات، زاد عدد الأخطاء المسموح بها (نظراً لأن النسبة المئوية تبقى ثابتة). على سبيل المثال، إذا كان لديك مليون طلب في الشهر، فإن 0.1% منها تعادل 1000 خطأ مسموح به.
**الخطوة 3: حساب عدد الأخطاء المسموح بها** تستخدم الحاسبة المعادلة: `عدد الأخطاء المسموح بها = إجمالي الطلبات × (100 - SLO) / 100`. حيث `100 - SLO` يمثل النسبة المئوية المسموح بها للفشل. تقوم الحاسبة بتحويل النسبة إلى كسر عشري وتضربها في إجمالي الطلبات. مثلاً مع SLO=99.9 وإجمالي الطلبات=1,000,000، يكون الحساب: 1,000,000 × (0.001) = 1,000 خطأ. هذا هو 'ميزانية الخطأ' المتاحة لك.
**الخطوة 4: تفسير النتيجة وإدارة الميزانية** النتيجة هي الحد الأقصى لعدد الأخطاء المسموح بها قبل انتهاك SLO. يمكنك تتبع الأخطاء الفعلية خلال الفترة ومقارنتها بهذه الميزانية. إذا اقتربت من الحد، عليك تقليل معدل الخطأ أو زيادة الموارد. يساعد هذا في اتخاذ قرارات تشغيلية مثل إيقاف الإصدارات الجديدة أو تخصيص فرق للصيانة. مفهوم 'ميزانية الخطأ' شائع في منهجيات الموثوقية مثل Google SRE.
أمثلة محلولة
تطبيقات عملية على ميزانية الخطأ بخطوات الحل كاملة.
الحل
لحساب ميزانية الخطأ، نستخدم المعادلة: الأخطاء المسموح بها = إجمالي الطلبات × (100 - SLO) / 100. أولاً، نحسب نسبة الفشل المسموح بها: 100 - 99.95 = 0.05%. نحولها إلى كسر عشري: 0.05 ÷ 100 = 0.0005. ثم نضرب في عدد الطلبات: 5,000,000 × 0.0005 = 2,500 خطأ. هذا يعني أنه يمكنك أن تتحمل حتى 2,500 خطأ شهرياً دون انتهاك SLO. إذا تجاوزت هذا الرقم، فأنت بحاجة إلى تحسين الاستقرار. مثال واقعي: إذا كانت خدمتك تدعم تطبيقاً مصرفياً، فإن كل خطأ قد يؤثر على ملايين المستخدمين، لذا الاحتفاظ بميزانية خطأ صغيرة (مثل 0.05%) يتطلب مراقبة دقيقة واستجابة سريعة للأعطال.
الحل
أولاً، نحسب ميزانية الخطأ الكلية للربع: 10,000,000 × (100 - 99.9)/100 = 10,000,000 × 0.001 = 10,000 خطأ. الربع الواحد غالباً 91 يوماً تقريباً (أو 91.25 للربع السنوي). إذا افترضنا 91 يوماً، فإن ميزانية الخطأ اليومية = 10,000 ÷ 91 ≈ 109.89، أي حوالي 110 خطأ يومياً. لكن العملياً، قد يكون توزيع الطلبات غير متساوٍ؛ أيام الذروة قد تستهلك ميزانية أكبر. لذا من الأفضل مراقبة معدل الخطأ اللحظي واستخدام مفهوم 'معدل الحرق' (burn rate) لتجنب استنزاف الميزانية بسرعة. على سبيل المثال، إذا كان معدل الخطأ الفعلي 200 خطأ يومياً، فإنك ستستهلك الميزانية في 50 يوماً فقط، مما ينتهك SLO قبل نهاية الربع. يمكن تعديل هذا عن طريق إضافة سعة احتياطية أو إدارة الأخطاء بشكل أفضل.
أمثلة محسوبة
قيم مُدخَلة ونتيجة محسوبة فعليًا بواسطة ميزانية الخطأ.
مرجع — ثلاثة تسعات بمليون طلب
- هدف SLO (%)
- 99.9
- إجمالي الطلبات
- 1,000,000
مرجع — ميزانية أوسع
- هدف SLO (%)
- 99.5
- إجمالي الطلبات
- 500,000
مرجع — SLO بنسبة 99%
- هدف SLO (%)
- 99
- إجمالي الطلبات
- 10,000
قيم مُدخَلة قياسية
- هدف SLO (%)
- 95
- إجمالي الطلبات
- 10,000
قيم مُدخَلة مرتفعة
- هدف SLO (%)
- 98.5
- إجمالي الطلبات
- 100,000
قيم مُدخَلة منخفضة
- هدف SLO (%)
- 91
- إجمالي الطلبات
- 500
قيم مُدخَلة قياسية
- هدف SLO (%)
- 93
- إجمالي الطلبات
- 300
قيم مُدخَلة مرتفعة
- هدف SLO (%)
- 98
- إجمالي الطلبات
- 800
قيم مُدخَلة منخفضة
- هدف SLO (%)
- 90.5
- إجمالي الطلبات
- 50