Weitere ähnliche Inhalte Ähnlich wie Gazelle & CPAN modules for performance. Shibuya.pm Tech Talk #17 LT (20) Mehr von Masahiro Nagano (20) Kürzlich hochgeladen (10) Gazelle & CPAN modules for performance. Shibuya.pm Tech Talk #17 LT1. Gazelle & CPAN modules
for Performance
長野雅広 @kazeburo
Shibuya Perl Mongers テクニカルトーク #17 LT
11. Rate wwwform_pp wwwform_xs urlencode_xs
wwwform_pp 21764/s -- -90% -91%
wwwform_xs 227555/s 946% -- -1%
urlencode_xs 229375/s 954% 1% --
parseのベンチマークで9.5倍
* URL::Encode(::XS)は若干互換性がない
12. Rate use_uri concat_escape build_xs
use_uri 23640/s -- -32% -97%
concat_escape 34796/s 47% -- -96%
build_xs 843158/s 3467% 2323% --
buildのベンチマークで35倍
15. my $cookie = bake_cookie('foo', {
value => 'val',
path => "test",
domain => '.example.com',
expires => '+24h'
});
$headers->push_header(‘Set-Cookie’,$cookie);
my $cookie_hashref = crush_cookie($headers->header(‘Cookie’));
build
parse
16. Benchmark: running pp, xs for at least 1 CPU seconds...
crush_pp: 1 wallclock secs @ 16592.59/s (n=17920)
crush_xs: 1 wallclock secs @ 182043.81/s (n=191146)
Rate pp xs
crush_pp 16593/s -- -91%
crush_xs 182044/s 997% --
Benchmark: running pp, xs for at least 1 CPU seconds...
crush_pp: 2 wallclock secs @ 201749.06/s (n=213854)
crush_xs: 0 wallclock secs @ 1042617.50/s (n=1251141)
Rate pp xs
crush_pp 201749/s -- -81%
crush_xs 1042618/s 417% --
## length($cookie) == 675
## length($cookie) == 17