.NET Architecture & System Design Interview Question #12

What is graceful degradation?

Architecture Fundamentals, Scalability, Availability & Performance Junior Beginner

Quick Interview Answer

Graceful degradation means preserving the most important functionality when a non-critical component is unavailable instead of failing the entire request or application.

Detailed Explanation

Graceful degradation means preserving the most important functionality when a non-critical component is unavailable instead of failing the entire request or application.

For example, an e-commerce page may still show product details if the recommendation service is unavailable. The degraded behavior should be intentional, observable, and appropriate for the business operation.

Code Example

Product Page
  |- Product details: required
  |- Price: required
  |- Recommendations: optional

Recommendation failure
-> return page without recommendations