iteye_12555 2008-11-13 12:11
浏览 198
已采纳

怎么通过代理访问网络?

  我帮人做一个这样测试程序,他有个搜索网站,我的程序要对他的搜索网站发送大量的搜索请求以测试它的压力,经过我的测试他的网站在一个时间段内对一个IP的发送量有限制,每次发送到1200左右,就再也发送不上(抛出异常为:java.net.SocketException: Unexpected end of file from server),换一个IP或者隔一段时间(这个时间不止一两分钟咯)就好了。

  所以,我想是否能通过网上搜索代理IP,然后每个线程使用一个IP来对他进行发送,从而避免它在一个时间段内的IP发送量的限制。

  这样就会有几个问题: 1、首先网上搜索代理IP,这种办法是否行得通?如果行的话,怎么网上所搜可用代理IP。2、多线程,每个线程使用一个IP上网,也就是一台机器同时使用多个IP上网,这能行吗?

谢谢,有经验的同道予以指教!谢谢!
问题补充

阳光晒晒 写道
1.你是作网站搜索的么?找个好点的代理发布网站解析就行了

2.不知道应该可以

3.httpClient.getHostConfiguration().setProxy(hostName,port);



谢谢!HttpClient是指那个开源的组件不?
  • 写回答

4条回答 默认 最新

  • iteye_2429 2008-11-13 12:11
    关注

    找到一个多线程的例子
    http://tech.ddvip.com/2008-09/122155634865849.html
    不知道是不是你想要的: 你可以试试
    [quote]
     8.多线程模式下使用httpclient

      多线程同时访问httpclient,例如同时从一个站点上下载多个文件。对于同一个HttpConnection同一个时间只能有一个线程访问,为了保证多线程工作环境下不产生冲突,httpclient使用了一个多线程连接管理器的类:MultiThreadedHttpConnectionManager,要使用这个类很简单,只需要在构造HttpClient实例的时候传入即可,代码如下:

    [code="java"]  MultiThreadedHttpConnectionManager connectionManager = new MultiThreadedHttpConnectionManager();

      HttpClient client = new HttpClient(connectionManager);[/code]

      以后尽管访问client实例即可。[/quote]

    要把你写的代码发上来让我们也学习一下噢

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料