Мой вопрос состоит из двух частей, касающихся haproxy.
Вопрос 1:
Служба, с которой я работаю, занимается загрузкой массивных XML-документов и загрузкой довольно больших результатов.Загруженные XML-документы используются работниками для генерации ответов, которые впоследствии могут быть загружены с рабочих.Вот грубая настройка:
- запрос -> www.domain.com -> работник (1 или 2) .domain.com
www.domain.com является статическимконтент-сервер, а также где хапрокси будет находиться.Все запросы будут изначально приходить сюда.Статический контент (html, изображения и т. Д.) Должен быть предоставлен nginx на www.domain.com.
Однако запросы с конкретными URL-адресами, такими как www.domain.com/[upload]/[id1] или www.domain.com/[download]/[id1], должны обслуживаться самими работниками.Дополнительный улов здесь заключается в том, что пересылка должна быть привязанной на основе URL.
Например:
Предположим, файл XML был загружен на www.domain.com/upload/123.haproxy увидит, что URL содержит загрузку, и направит запрос либо на worker1.domain.com, либо worker2.domain.com.Позже, когда будет сделан запрос GET на www.domain.com/download/123, мне понадобится haproxy, чтобы направить его работнику, который первоначально обслуживал запрос на загрузку с тем же идентификатором (123).По сути, я не могу получить запрос на загрузку для данного идентификатора перейти на worker1, а затем запрос на загрузку для того же идентификатора перейти на worker2.Будет ли что-то подобное возможно с использованием haproxy?
Вопрос 2:
Учитывая, что я загружаю файл на www.domain.com/upload, и haproxy направляет его на worker1.domain.com, весь файл пройдет через haproxy?То есть, пока файл worker1.domain.com получит файл, будет ли haproxy также получать тот же удар по пропускной способности, что и при пересылке?
Большое спасибо!