2016-10-11 2 views
1

У меня есть сервер Tomcat, который подключается к другому серверу Tableau. Мне нужно сделать около 25 вызовов GET от Tomcat до Tableau. Теперь я пытаюсь вставить это и позволить каждому потоку создать свой собственный объект HTTP-соединения и выполнить вызов. В моей локальной системе (Tomcat local, Tableau удален), я замечаю, что в этом случае каждый мой поток занимает примерно 10 секунд в среднем, поэтому всего 10 секунд.Максимальные одновременные подключения HTTP для одного домена между двумя серверами

Однако, если я делаю это последовательно, каждый запрос занимает 2 секунды, таким образом, в общей сложности 50.

мои сомнения, при выполнении запросов параллельно, почему каждый берет более чем на 2 секунды, когда он занимает всего 2 когда это делается последовательно?

Имеет ли это какое-либо отношение к максимальным параллельным подключениям к одному домену от одного клиента (браузера)? Но здесь запрос идет от моего сервера Tomcat, а не от браузера.

Если да, то каково правило по умолчанию и есть ли способ его изменить?

ответ

0

По моему мнению, его наиболее вероятно Context Switching Overhead, что система должна пройти для каждого запроса, и именно поэтому вы видите более длительные времена для отдельных запросов (по сравнению с одной последовательной нитью), но значительный выигрыш в общей обработке.

Имеет смысл перейти на параллельную обработку, когда Накладные расходы на переключение контекста незначительны по сравнению с временем, затраченным на общую активность.

Смежные вопросы