我帮人做一个这样测试程序,他有个搜索网站,我的程序要对他的搜索网站发送大量的搜索请求以测试它的压力,经过我的测试他的网站在一个时间段内对一个IP的发送量有限制,每次发送到1200左右,就再也发送不上(抛出异常为:java.net.SocketException: Unexpected end of file from server),换一个IP或者隔一段时间(这个时间不止一两分钟咯)就好了,发送1200个后又要重新换IP。 
  所以,我想是否能通过网上搜索代理IP,然后每个线程使用一个IP来对他进行发送,从而避免它在一个时间段内的IP发送量的限制。 
  这样就会有几个问题: 1、首先网上搜索代理IP,这种办法是否行得通?如果行的话,怎么网上所搜可用代理IP。2、多线程,每个线程使用一个IP上网,也就是一台机器同时使用多个IP上网,这能行吗? 

解决方案 »

  1.   

    1、行的通,网上很多的代理网站,可以用正则取出这些IP然后验证并保存在某个表中
    2、可以,迅雷,flashget等多线程下载不就用了类似的技术了么。大概就是写个方法,每次调用的时候传入的代理IP不同而已。具体代码不会写,只有思路,呵呵
      

  2.   

    印象中一個應用的proxy設置是全局的,用到
    System.setProperty(),這樣的話應該不可以吧,期待其他解答
      

  3.   

    java.net.Proxy
    这个类是表示代理的,看你怎么用了~