Когда трафик резко растёт, у сервиса на самом деле есть не два состояния — «работает» и «упал», — а целый спектр между ними. Проблема в том, что большинство систем спроектированы только для крайних точек: пока хватает ресурсов, работает всё и одинаково хорошо, а как только не хватает — падает тоже всё и сразу, потому что первый же перегруженный компонент утягивает за собой остальные. Управляемая деградация — это когда вы заранее решаете, какая часть функциональности жертвуется первой, чтобы ядро сервиса продолжало работать, вместо того чтобы это решение…
Подробнее →