Graceful degradation भनेको निर्भरता विफल हुँदा, प्रणालीले त्रुटि फर्काउनुको सट्टा कम गरिएको वा आंशिक अनुभव प्रदान गरेर मुख्य प्रवाह काम गरिरहने अर्थ हो। लक्ष्य नरम विफल हुनु हो, कठोर विफल नरहनु: एक घटिएको पृष्ठ 500 भन्दा राम्रो हो।
Graceful degradation भनेको निर्भरता विफल हुँदा, प्रणालीले त्रुटि फर्काउनुको सट्टा कम गरिएको वा आंशिक अनुभव प्रदान गरेर मुख्य प्रवाह काम गरिरहने अर्थ हो। लक्ष्य नरम विफल हुनु हो, कठोर विफल नरहनु: एक घटिएको पृष्ठ 500 भन्दा राम्रो हो।
BAD (fail hard):
search() → backend timeout → throw → user sees HTTP 500 (whole page dead)
GOOD (fail soft):
result = search()
catch timeout → return cached_results OR empty + notice
page renders:
[ "Showing recent results — live search is temporarily unavailable." ]
+ cached listings, working nav, working checkout
→ user keeps browsing; core flow intact
मृत पृष्ठको सट्टा, प्रयोगकर्ताले क्यास गरिएको नतिजा र साना सूचना पाउँछ, जबकि नेभिगेसन र checkout काम गरिरहन्छ। विफलता एक फिचरमा सीमित छ।
निर्भरताहरू विफल हुनेछन् — third-party APIs, search clusters, recommendation services। graceful degradation बिना, कुनै पनि एक विफलता पूर्ण outage मा cascade हुन्छ। नरम विफल (cached/partial/default डेटा) को लागि डिजाइन गर, non-critical paths लाई flag गर, fallbacks सँग timeout गर, र bulkheads सँग विफलताहरू isolate गर ले आंशिक विफलताहरूको समयमा उत्पादन प्रयोग गर्न सकिनेछ — जो साना blip र ठूलो घटना बीचको भिन्नता हो।