powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Apache HTTPClient vs java.net.URL.openStream() производительность
3 сообщений из 3, страница 1 из 1
Apache HTTPClient vs java.net.URL.openStream() производительность
    #37802550
msangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Интересует особенности реализации этих двох способов скачивания контента.

try {
String results="",line;
BufferedReader dis = new BufferedReader(new InputStreamReader(new URL(" http://pastehtml.com/raw/bynf3hl8w.txt").openStream()));
while ((line = dis.readLine()) != null) {
results += line + "\n";
}
System.out.println(results);

} catch (MalformedURLException e) {
e.printStackTrace();
} catch(IOException e){
e.printStackTrace();
}

Как я понимаю - в этом случае к сайту будет создано соединение через сокет. И пока присутствуют данные - они считаются и выведутся на экран.
Вопрос в том, будет ли это сокет соединение использовано во время следующего запроса через этот же код? Будет ли создано новое сокет соединение? Создание нового соединения является очень затратной операцией? Может сокет будет кэшироваться? А если взять Apache HTTPClient и сделать то же самое с ним? Что скажет HTTPClient на вопросы выше?
Интересует сравнение производительности для этих двух способов. И я вообще не в теме - критично ли это?
Почему то я всегда считал, что библиотека от апача работает лучше, но после того, как случайно наткнулся на одну реализацию АПИ( http://code.google.com/p/facebook-java-sdk/) где как раз используется первый способ, почему то засомневался.
Я бы написал бенчмарк, но недостаточно компетентен для таких вещей(там много факторов - кэширование контента, днс и вообще - бенчмарки это тонкое дело)
...
Рейтинг: 0 / 0
Apache HTTPClient vs java.net.URL.openStream() производительность
    #37802580
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Apache HTTPClient vs java.net.URL.openStream() производительность
    #37807846
msangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Андрей Панфилов,
статьяThe support for HTTP keep-Alive is done transparently. However, it can be controlled by system properties http.keepAlive, and http.maxConnections, as well as by HTTP/1.1 specified request and response headers.

The system properties that control the behavior of Keep-Alive are:

http.keepAlive=<boolean>
default: true
http.maxConnections=<int>
default: 5

т.е. получается, что и там и там работает одна и та же настройка? и разницы в производительности нет?
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Apache HTTPClient vs java.net.URL.openStream() производительность
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]