Простыми словами
Максимальное время ожидания операции, после которого система прекращает ожидание и считает попытку неуспешной. Например, запрос к платёжному провайдеру не должен ждать бесконечно. Таймаут ограничивает ущерб, но его выбирают по реальной задержке и связывают с безопасным повтором. Поэтому заранее определяют границы ожидания и поведение при отказе - иначе один медленный компонент начинает удерживать ресурсы и распространять проблему дальше.
Пример при разработке
Запрос к платёжному провайдеру не должен ждать бесконечно. Таймаут ограничивает ущерб, но его выбирают по реальной задержке и связывают с безопасным повтором.
Это редакционный пример применения, а не часть определения или доказательство концепции.Механизм действия
Сначала проверяют, есть ли исходное условие из определения. Затем смотрят, как оно влияет на структуру компонентов, потоки данных, ограничения и действия участников. Если эту связь не удаётся наблюдать, принцип не стоит использовать как готовое объяснение.
Пример в работе
Решение принимают без учета механизма «Timeout», оценивая только ближайший эффект.
Перед изменением проверяют, как «Timeout» влияет на ограничения, стимулы, зависимости и вторичные последствия.
Ограничения
«Timeout» объясняет только часть происходящего в области «Надежность и SRE». Сам принцип не говорит, насколько сильным будет эффект в вашем случае, и не заменяет измерения. При другом масштабе, среде или временном горизонте результат может отличаться.
Источник
Marc Brooker. Timeouts, retries, and backoff with jitter. 2019.