1

我有时会使用 LWP::Simple Perl 模块,据我所知,它是完整 LWP 模块的简化版本。我盲目地使用它,因为有人建议我不久前使用它。与完整包相比,使用它有什么好处,它是否更快并且更易于使用?

4

2 回答 2

4

LWP::Simple 并不比 LWP::UserAgent 快,因为它使用 LWP::UserAgent。它只是一个更简单的界面。

于 2013-07-21T16:18:47.990 回答
0

“A 比 B 快”之类的问题,应该总是得到相同的答案:试试看!在您的环境中,使用您通常使用的数据类型等。这里有一个简短的脚本可以帮助您入门:

use strict;
use warnings;

use Benchmark qw/ cmpthese /;
use LWP::UserAgent;
use LWP::Simple;

my $url = 'http://localhost/';

my $ua = sub {
    my $ua = LWP::UserAgent->new;
    my $res = $ua->get( $url );
    if ( $res->is_success ) {
        my $content = $res->decoded_content;
    }
};

my $simple = sub {
    my $content = get( $url );
};

cmpthese( -60, {
        'LWP::UserAgent' => $ua,
        'LWP::Simple'    => $simple,
});

在我的系统上, wherehttp://localhost/将返回一个微小的索引页面,LWP::Simple实际上速度稍慢:

                Rate    LWP::Simple LWP::UserAgent
LWP::Simple    401/s             --            -3%
LWP::UserAgent 414/s             3%             --

但是,当 URL 为您提供 DVD 图像时,很难说会发生什么,例如

于 2013-07-22T12:08:27.383 回答