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

Bulkhead Pattern

Bulkhead Pattern

Ресурсы изолируются по секциям, чтобы отказ одной части не исчерпал ресурсы остальных.

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

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

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

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

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

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

Все интеграции используют общий пул соединений и потоков.

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

Критичные и некритичные нагрузки имеют отдельные лимиты и ресурсы.

Ограничения

Изоляция отсеков ограничивает распространение отказа, но резервирует ресурсы и может снижать общую утилизацию; неверные границы оставляют скрытые общие точки отказа.

Источник

Michael T. Nygard, “Release It! Design and Deploy Production-Ready Software”, 2007; 2018.

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