java: какой http класс заюзать ? - Форум успешных вебмастеров - GoFuckBiz.com
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB90.7493
BTC/USD70812.3230
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 18.02.2011, 21:39   #1
durman
Senior Member
 
Аватар для durman
 
Регистрация: 06.02.2008
Сообщений: 314
Бабло: $91645
По умолчанию java: какой http класс заюзать ?

Нужен мощный http клиент, думаю на джаве много реализаций, но солжность с этим языком в том что нету единого репазитория где можно посмотреть все варианты.
В общем , кто в теме, надо что бы клас поддерживал обязательно https, соксы, и очень желательно keepalive.

Сервер планируется нагрузить по полной, поэтому думаю класс должен поддерживать асинхронные вызовы (включая dns resolve). Но может опытный гуру скажет что мультипоточная реализация ничем не уступит асинхронной ? поделитесь опытом.
durman вне форума  
Старый 19.02.2011, 19:45   #2
durman
Senior Member
 
Аватар для durman
 
Регистрация: 06.02.2008
Сообщений: 314
Бабло: $91645
ТС -->
автор темы ТС По умолчанию

что по выходным java прогеры не работают ?
durman вне форума  
Старый 19.02.2011, 19:49   #3
medar
кодер-энтузиаст
 
Аватар для medar
 
Регистрация: 04.04.2007
Адрес: Джамайка
Сообщений: 3,381
Бабло: $447150
По умолчанию

Их тут вообще нет, имхо.
medar вне форума  
Старый 19.02.2011, 21:13   #4
MetaloIvastik
Senior Member
 
Регистрация: 15.09.2010
Сообщений: 223
Бабло: $25140
По умолчанию

Обычно пользуюсь HtmlUnit или HttpClient , ибо цель простота и скорость разработки. Оба не асинхронные.
HtmlUnit - базируется на HttpClient.
HttpClient - поддерживает https и socks 2 с небольшой настройкой.

Из асинхронных можно посмотреть на фреймворки Apache Mina и Netty от jboss.

Задача довольно специфичная и наверно мало людей таким занимается.
Поэтому направление можно подчерпнуть из слайдов и статей на тему Crawler Architecture и подобные.
Или же посмотреть на опенсорсные пауки - что там используют и как.
MetaloIvastik вне форума  
Старый 21.02.2011, 17:46   #5
durman
Senior Member
 
Аватар для durman
 
Регистрация: 06.02.2008
Сообщений: 314
Бабло: $91645
ТС -->
автор темы ТС По умолчанию

может ещё кто что нибудь посоветует ?
durman вне форума  
Старый 21.02.2011, 18:02   #6
Hossa
Юниор
 
Аватар для Hossa
 
Регистрация: 24.05.2010
Сообщений: 11
Бабло: $6230
Отправить сообщение для Hossa с помощью ICQ
По умолчанию

Попробуй вот это:
https://github.com/AsyncHttpClient/async-http-client
Hossa вне форума  
Старый 21.02.2011, 18:50   #7
gameover
Юниор
 
Регистрация: 25.02.2010
Сообщений: 24
Бабло: $7280
По умолчанию

если нужна скорость разработки - python
если нужна скорость выполнения - c

java не нужна =)
gameover вне форума  
Старый 21.02.2011, 19:04   #8
Hossa
Юниор
 
Аватар для Hossa
 
Регистрация: 24.05.2010
Сообщений: 11
Бабло: $6230
Отправить сообщение для Hossa с помощью ICQ
По умолчанию

gameover +1
Идеальный вариант ИМХО - критические вещи на С, все остальное на питоне.
Hossa вне форума  
Старый 21.02.2011, 20:03   #9
drafter
Юниор
 
Регистрация: 15.09.2010
Сообщений: 18
Бабло: $6110
По умолчанию

Цитата:
Сообщение от durman Посмотреть сообщение
может ещё кто что нибудь посоветует ?
Смотря подо что. Если просто качать страницы — HTTPConnection сойдет стандартный. Если писать свою постилку или еще что нибудь роботизированное - апачевский HTTPClient, он при надобности и куки собирать умеет и авторизовываться. Можно мультитредно пустить, опять же. В общем, кроме этих двух ничего другого не нужно, имхо.
drafter вне форума  
Старый 21.02.2011, 20:36   #10
Black Box
Member
 
Регистрация: 26.02.2008
Сообщений: 40
Бабло: $4000
По умолчанию

раньше юзали джакартовский HttpClient,
щас почти полностью перешли на java.net.* (UrlConnection, HttpUrlConnection) - все довольно просто, соксы есть, а по скорости работает гораздо быстрее джакартовского. И для фтп кстати его же используем.
Работу с куки пришлось реализовывать самостоятельно, но это не очень сложно, если надо могу поделится.
Black Box вне форума