modulepackage
0.0.0-20200705180720-665f1d85bb41
Repository: https://github.com/dimitryef/multiplexer.git
Documentation: pkg.go.dev
# README
HTTP-мультиплексор
Описание:
- приложение представляет собой http-сервер с одним хендлером
- хедлер на вход получает POST-запрос со списком url в json-формате
- сервер запрашивает данные по всем этим url и возвращает результат клиенту в json-формате
- если в процессе обработки хотя бы одного из url получена ошибка, обработка всего списка прекращается и клиенту возвращается ошибка в текстовом формате
Ограничения:
- сервер не принимает запрос если количество url в нем больше 20
- сервер не обслуживает больше чем 100 одновременных входящих подключений
- для каждого входящего запроса должно быть не больше 4 одновременных исходящих
- таймаут на запрос одного url - секунда
- обработка запроса может быть отменена клиентом в любой момент, это должно повлечь за собой остановку всех операций связанных с этим запросом
- сервис должен поддерживать 'graceful shutdown': при получении сигнала от OS перестать принимать входящие запросы, завершить текущие запросы и остановиться