В background worker-а появились периодические timeout-ы. Какие первые гипотезы проверите?

GoMiddle+Practical and SituationalТеорияpractical_and_situationalbackground_worker_ago_backend_developer

Что хотят услышать интервьюеры:

Суть: Для background worker-а нужно рассматривать не только код, но и нагрузку, зависимости, таймауты, данные и эксплуатацию.

Ответ:

Что проверить:

  • context cancellation, worker pool, backpressure, shutdown
  • логи с request-id/trace-id
  • метрики latency/error rate/saturation
  • профили pprof или планы SQL, если проблема в производительности

Пример:

ctx, cancel := context.WithTimeout(ctx, 2*time.Second); defer cancel()

Типичная ошибка: сразу менять код или увеличивать ресурсы без локализации bottleneck и без проверки гипотез.

Как отвечать на собеседовании: идите по цепочке: симптом → метрики → гипотезы → проверка → исправление → регрессия/мониторинг.

Источники

Похожие вопросы