Горутина на каждый URL при большом списке создаёт неконтролируемую конкурентность, нагрузку на сеть, память и внешние сервисы. Лучше ограниченный worker pool.
Почему не стоит создавать отдельную горутину на каждый URL при проверке терминалов?
Горутина на каждый URL при большом списке создаёт неконтролируемую конкурентность, нагрузку на сеть, память и внешние сервисы. Лучше ограниченный worker pool.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Горутина на каждый URL при большом списке создаёт неконтролируемую конкурентность, нагрузку на сеть, память и внешние сервисы. Лучше ограниченный worker pool.
Учитывайте лимиты соединений, файловых дескрипторов и пропускную способность зависимости. Очередь тоже должна иметь предел или backpressure, а запросы — таймаут и отмену. Лёгкость горутин не делает их бесплатными. Для маленького фиксированного списка простой запуск допустим, но масштабируемый код должен явно ограничивать ресурсы.