【问题标题】:fater web page source provider更胖的网页源码提供者
【发布时间】:2011-04-21 10:34:06
【问题描述】:

我正在尝试使用代理在 java 中提取页面源代码。

我使用了 httpclient、httpunit 和 HttpURLConnection,当我在没有代理的情况下使用页面源时,所有这些都需要 5 秒,但我使用代理,然后单个页面需要 12-15 秒。

有什么方法可以提高速度或提供快速页面源的其他类。

【问题讨论】:

  • 如果它在没有代理的情况下运行得足够快,你为什么需要一个?

标签: java httprequest webpage apache-commons-httpclient http-unit


【解决方案1】:

您首先需要确定问题出在哪里:是您从中提取页面的服务器真的很慢,还是您使用的代理真的很慢(或两者兼而有之)? 如果您在命令行中使用 wget(甚至可能是 curl)之类的工具,它应该会向您显示有关页面下载时间的统计信息——通过代理并绕过代理。如果这些时间与您的代码显示的时间相同,那么您无法优化。但是,如果您看到差异,那么您可以考虑使用其他方式在代码中拉取页面。 作为一般经验法则:

  • 如果您要处理大量连接,请使用 Java NIO
  • 如果您正在处理仅向少数主机/服务器的大量传输,请使用普通 Java IO

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-13
    • 1970-01-01
    • 2019-07-19
    • 2013-06-09
    • 1970-01-01
    • 1970-01-01
    • 2017-07-06
    • 1970-01-01
    相关资源
    最近更新 更多