انتقل إلى المحتوى
أمين أبوزيد
درس مخطط لهMID-033-L06

البدائل الاحتياطية والتدهور المتدرّج

  • الدرس 6 من 8
  • Mid-level
في هذا الدرس 4 موضوعات

هذا الدرس مخطط له. يعرض المخطط أدناه الموضوعات التي سيغطيها، ولم يُنشر الدرس الكامل بعد.

نص الدروس والتمارين باللغة الإنجليزية، بينما تبقى واجهة الموقع وعناوين الدروس بالعربية.

في هذا الدرس

keep serving something useful, honestly.

الموضوعات المخطط لها

  • A fallback runs when the call fails: cached value, default, or partial response.
  • Degrade optional features first (reviews, recommendations); fail clearly for essential ones (payment).
  • Be honest: never show a made-up "payment succeeded". Show "reviews unavailable".
  • Mark degraded responses so clients and monitoring know.
  • Stale cache is a valid fallback only if stale is acceptable for that data.
تفاصيل المخطط المبدئي

عرض عملي

java
@CircuitBreaker(name = "reviews", fallbackMethod = "noReviews")
List<Review> reviews(long productId) { ... }
List<Review> noReviews(long productId, Throwable t) { return List.of(); } // UI: "Reviews unavailable"

اختبر فهمك

Should checkout fall back to "payment OK" if payments is down?

أظهر الإجابة

No; fail honestly or leave the order pending.

التطبيق

طبّق هذا الدرس بمختبر الوحدة وتمارينها واختبارها.

المختبر والتمارين الاختبار

تعليم الدرس كمكتمل اختياري ويمكنك التراجع عنه في أي وقت. يبقى تقدمك محفوظًا في هذا المتصفح.

اكتب للبحث في المستويات والمراحل والوحدات والدروس.