#java #httprequest #webpage #apache-commons-httpclient #http-unit
#java #httprequest #HTML #apache-commons-httpclient #http-модуль
Вопрос:
Я пытаюсь получить исходный код страницы на Java с помощью прокси.
Я использовал httpclient, httpunit и HttpURLConnection, все это занимает 5 секунд, когда я ищу источник страницы без прокси, но я использую прокси, тогда для одной страницы требуется 12-15 секунд.
Есть ли какой-либо способ увеличить скорость или другой класс, который обеспечивает быстрый источник страницы.
Комментарии:
1. Если он работает достаточно быстро без прокси, зачем он вам нужен?
Ответ №1:
Сначала вам нужно определить, в чем проблема: действительно ли сервер, с которого вы извлекаете страницы, работает очень медленно, или дело в том, что используемый вами прокси-сервер действительно работает медленно (или и то, и другое)? Если вы используете подобные wget (или, возможно, даже curl) в командной строке, которая должна показывать вам статистику о времени загрузки страницы — через прокси и в обход прокси. Если эти времена совпадают с тем, что показывает ваш код, тогда вы ничего не можете оптимизировать. Однако, если вы видите несоответствия, вы можете рассмотреть другие способы извлечения страниц из вашего кода. Как общее эмпирическое правило:
- используйте Java NIO, если вы имеете дело с большим количеством подключений
- используйте обычный Java IO, если вы имеете дело с большими переводами только на несколько хостов / серверов