SYSTEM ATLASЗагрузка материала

Load Shedding

Load Shedding

Система отбрасывает часть работы, сохраняя критические функции.

Простыми словами

Намеренный отказ от части запросов или работы при перегрузке, чтобы сохранить жизнеспособность критической части системы. Например, при перегрузке сервис временно отклоняет необязательные рекомендации, но продолжает принимать оплату. Он теряет второстепенную функцию, а не всё приложение. Поэтому заранее определяют границы ожидания и поведение при отказе - иначе один медленный компонент начинает удерживать ресурсы и распространять проблему дальше.

Пример от @Vibeclakr

Пример при разработке

При перегрузке сервис временно отклоняет необязательные рекомендации, но продолжает принимать оплату. Он теряет второстепенную функцию, а не всё приложение.

Это редакционный пример применения, а не часть определения или доказательство концепции.

Механизм действия

Сначала проверяют, есть ли исходное условие из определения. Затем смотрят, как оно влияет на структуру компонентов, потоки данных, ограничения и действия участников. Если эту связь не удаётся наблюдать, принцип не стоит использовать как готовое объяснение.

Пример в работе

Нерабочий подход

Решение принимают без учета механизма «Load Shedding», оценивая только ближайший эффект.

Системный подход

Перед изменением проверяют, как «Load Shedding» влияет на ограничения, стимулы, зависимости и вторичные последствия.

Ограничения

«Load Shedding» объясняет только часть происходящего в области «Надежность и SRE». Сам принцип не говорит, насколько сильным будет эффект в вашем случае, и не заменяет измерения. При другом масштабе, среде или временном горизонте результат может отличаться.

Источник

Betsy Beyer, Chris Jones, Jennifer Petoff, Niall Richard Murphy. Site Reliability Engineering: Handling Overload. 2016. ISBN 9781491929124.

Первоисточник