Graceful degradation в Go.

Ответ

При недоступности части системы приложение снижает функциональность, но продолжает работать. В Go: проверка доступности зависимостей (health), при сбое возвращать заглушки или кешированные данные; circuit breaker не вызывать сломанный сервис. Критичные операции - быстрый отказ с понятной ошибкой; некритичные - fallback (пустой список, кеш). Мониторинг и алерты по деградации.

if !cache.IsHealthy() {
    return nil, ErrServiceUnavailable
}
data, err := cache.Get(ctx, key)
if err != nil {
    return getFromDB(ctx, key) // fallback
}
🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.