【问题标题】:making LWP Useragent faster使 LWP 用户代理更快
【发布时间】:2009-11-05 19:13:01
【问题描述】:

我需要执行大量 HTTP post 请求,并忽略响应。我目前正在使用 LWP::UserAgent 执行此操作。虽然我不确定它是在等待响应还是什么,但它似乎运行得有些慢,有没有办法加快它并可能只是忽略响应?

【问题讨论】:

  • 我不太了解LWP::UserAgent,但是您是否尝试过将max_size 设置为较低的数字?一旦到达max_size,传输可能会中断?

标签: perl lwp lwp-useragent


【解决方案1】:

bigian 的答案可能是最好的,但另一种加快速度的方法是使用 LWP::ConnCache 允许 LWP 重用现有连接,而不是为每个请求建立新连接。

如果您只访问一个站点,启用它就这么简单 --

my $conn_cache = LWP::ConnCache->new;
$conn_cache->total_capacity([1]) ;
$ua->conn_cache($conn_cache) ;

我发现这可以将 http 网站上某些操作的速度提高一倍,而对于 https 网站则提高一倍以上。

【讨论】:

    【解决方案2】:

    LWP::并行

    http://metacpan.org/pod/LWP::Parallel

    "简介

    ParallelUserAgent 是现有 libwww 模块的扩展。它允许您获取 URL 列表(它目前支持 HTTP、FTP 和 FILE URL。HTTPS 也可以工作)并并行连接到所有这些 URL,然后等待结果出现在。”

    太棒了,它对我来说奇迹...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      • 1970-01-01
      • 1970-01-01
      • 2010-10-07
      • 2023-03-06
      • 2016-04-11
      • 1970-01-01
      相关资源
      最近更新 更多