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

Паттерн Single Flight

Single Flight Pattern

Для одного ключа в каждый момент выполняется только одно дорогое вычисление или загрузка.

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

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

Пример от @Vibeclakr

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

В проекте команда фиксирует практику «Паттерн Single Flight» как отдельное правило, добавляет автоматическую проверку и наблюдаемый критерий результата.

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

Формальное определение

Для одного ключа в каждый момент выполняется только одно дорогое вычисление или загрузка.

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

Для «Паттерн Single Flight» команда задаёт явные границы, проверяемый контракт и сигнал, по которому видно соблюдение или нарушение правила.

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

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

Использовать «Паттерн Single Flight» как термин без владельца, критерия и проверки реального поведения.

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

Связать «Паттерн Single Flight» с конкретным риском, тестом или метрикой и пересматривать правило при изменении контекста.

Ограничения

Практика «Паттерн Single Flight» решает ограниченную задачу и не заменяет анализ всей системы, проверку исходных допущений и измерение побочных эффектов.

Источник

Microsoft, “Cloud Design Patterns”, 2026.

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