Visibility timeout скрывает сообщение на время обработки; если консьюмер не удалил — оно вернётся. После maxReceiveCount сообщение уходит в DLQ для расследования ядов/багов.
Разбор
- Timeout ≥ максимального времени обработки с запасом.
- DLQ обязателен в проде для async пайплайнов.
- Алерты на возраст/глубину DLQ.
- Идемпотентность консьюмера обязательна (at-least-once).
Итог
Visibility + DLQ делают очереди устойчивыми к сбоям обработчиков.