Эйч
Эйч
  • Все менторы
Задачи/Go-разработчик/Ограниченный пул воркеров для GET-запросов

Ограниченный пул воркеров для GET-запросов

Условие задачи

Организовать запуск не более 3 параллельных воркеров, которые выполняют GET-запросы по URL из массива и выводят body ответа в stdout.

gopackage main

import (
    "log"
)

// worker pool:
//   организовать запуск не более 3 параллельных воркеров,
//   которые выполняют запросы на все url из массива urls
//   и выполнят GET-запрос на каждый URL.
//   Вывести body ответа в stdout в текстовом виде.

// пример урлов, которые получаем от генератора:
//
// http://echo.xff.pw:8080/?echo_time=100&echo_body=body-1
// http://echo.xff.pw:8080/?echo_time=1500&echo_body=body-2
// http://echo.xff.pw:8080/?echo_time=500&echo_body=body-3
// http://echo.xff.pw:8080/?echo_time=150&echo_body=body-4
// http://echo.xff.pw:8080/?echo_time=500&echo_body=body-5

// функцию main желательно никак не менять,
// но если требуется по реализации — можно

func main() {
    pool := makePool(3)
    for url := range generateUrls(5) {
        log.Printf("=> Запуск, %s", url)
        pool.DoWork(url)
    }
}

Профессия

Go-разработчик

Сопроводим до оффера

Умножим шансы на каждом этапе поиска и поможем получить выгодный оффер

Узнать больше

Сервис развития карьеры

Контактыteam@h.careers@hcareers
TelegramVKYouTubeLinkedIn
Профессии
Компания
С чем помогаемОтзывыВопросы и ответыСертификатыВебинарыСтать ментором

Платформа принадлежит ООО "Эйч Карьера"
ИНН 9710095807 ОГРН 1227700077340
Адрес: 127006, город Москва, Старопименовский пер, д. 18 стр. 2, помещ./ком./этаж I/19/2

Copyright © 2020-2025 Сервис развития карьеры Эйч. Все права защищены.

Политика конфиденциальностиПользовательское соглашениеОферта