advanced
Bulkhead
Изолируйте pools, queues, threads или capacity, чтобы одна dependency или tenant не consumed resources всего service.
Bulkheads делят ресурсы — thread pools, connection pools, queue capacity, rate limits — чтобы overload в одной области не исчерпал весь сервис. Как отсеки корабля, сдерживающие затопление.
Компромисс: зарезервированная capacity простаивает, пока другая partition голодает при неверном sizing.
На интервью: bulkheads для сервиса с fast cache и slow payment API; tenant isolation.
Типовые ошибки: один giant pool для всех dependencies; bulkheads без metrics; нет rejection policy при заполнении partition.
Чеклист:
- Отдельные pools per critical dependency или tenant.
- Max concurrency и queue limits.
- Reject или shed load при saturation partition.
- Utilization per bulkhead в мониторинге.