HTTP::Headers::Fast - faster implementation of HTTP::Headers

NAME  SYNOPSIS  DESCRIPTION  WHY YET ANOTHER ONE?  ADDITIONAL METHODS  @ISA HACK  BENCHMARK  AUTHOR  THANKS TO  SEE ALSO  LICENSE 

NAME

HTTP::Headers::Fast − faster implementation of HTTP::Headers

SYNOPSIS

use HTTP::Headers::Fast;
# and, same as HTTP::Headers.

DESCRIPTION

HTTP::Headers::Fast is a perl class for parsing/writing HTTP headers.

The interface is same as HTTP::Headers.

WHY YET ANOTHER ONE?

HTTP::Headers is a very good. But I needed a faster implementation, fast =)

ADDITIONAL METHODS

as_string_without_sort

as_string method sorts the header names.But, sorting is bit slow.

In this method, stringify the instance of HTTP::Headers::Fast without sorting.

psgi_flatten

returns PSGI compatible arrayref of header.

my $headers:ArrayRef = $header−>flatten

psgi_flatten_without_sort

same as flatten but returns arrayref without sorting.

@ISA HACK

If you want HTTP::Headers::Fast to pretend like it’s really HTTP::Headers, you can try the following hack:

unshift @HTTP::Headers::Fast::ISA, 'HTTP::Headers';

BENCHMARK

HTTP::Headers 5.818, HTTP::Headers::Fast 0.01
−− push_header
Rate orig fast
orig 144928/s −− −20%
fast 181818/s 25% −−
−− push_header_many
Rate orig fast
orig 74627/s −− −16%
fast 89286/s 20% −−
−− get_date
Rate orig fast
orig 34884/s −− −14%
fast 40541/s 16% −−
−− set_date
Rate orig fast
orig 21505/s −− −19%
fast 26525/s 23% −−
−− scan
Rate orig fast
orig 57471/s −− −1%
fast 57803/s 1% −−
−− get_header
Rate orig fast
orig 120337/s −− −24%
fast 157729/s 31% −−
−− set_header
Rate orig fast
orig 79745/s −− −30%
fast 113766/s 43% −−
−− get_content_length
Rate orig fast
orig 182482/s −− −77%
fast 793651/s 335% −−
−− as_string
Rate orig fast
orig 23753/s −− −41%
fast 40161/s 69% −−

AUTHOR

Tokuhiro Matsuno E<lt>[email protected]<gt>
Daisuke Maki

And HTTP::Headers’ originally written by Gisle Aas.

THANKS TO

Markstos

Tatsuhiko Miyagawa

SEE ALSO

HTTP::Headers

LICENSE

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.


Updated 2024-01-29 - jenkler.se | uex.se