Group
Extension

Matches 3

Data-MessagePack ( G/GF/GFUJI/Data-MessagePack-0.42.tar.gz, GFUJI, 2012; MetaCPAN )
Data-MessagePack/benchmark/deserialize.pl ( view source; MetaCPAN )
;
use Data::MessagePack;
use JSON;
use Storable;
use Benchmark ':all';

#$Data::MessagePack::PreferInteger = 1;

my $a = do 'benchmark/data.pl';

my $j = JSON::encode_json($a);
my $m = Data::MessagePa
nt "$JSON::Backend: ", $JSON::Backend->VERSION, "\n";
print "Data::MessagePack: $Data::MessagePack::VERSION\n";
print "Storable: $Storable::VERSION\n";
cmpthese timethese(
    -1 => {
        json    
 => sub { JSON::decode_json($j)     },
        mp       => sub { Data::MessagePack->unpack($m) },
        storable => sub { Storable::thaw($s) },
    }
);

Data-MessagePack ( G/GF/GFUJI/Data-MessagePack-0.42.tar.gz, GFUJI, 2012; MetaCPAN )
Data-MessagePack/lib/Data/MessagePack.pm ( view source; MetaCPAN )
rialization format.
It enables to exchange structured objects between many languages like JSON.
But unlike JSON, it is very fast and small.

=head2 ADVANTAGES

=over 4

=item PORTABLE

The MessagePack
does not depend on language nor byte order.

=item SMALL IN SIZE

    say length(JSON::XS::encode_json({a=>1, b=>2}));   # => 13
    say length(Storable::nfreeze({a=>1, b=>2}));       # => 21
    say 
se.)

    -- serialize
    JSON::XS: 2.3
    Data::MessagePack: 0.24
    Storable: 2.21
    Benchmark: running json, mp, storable for at least 1 CPU seconds...
          json:  1 wallclock secs ( 1.00
Data-MessagePack ( G/GF/GFUJI/Data-MessagePack-0.42.tar.gz, GFUJI, 2012; MetaCPAN )
Data-MessagePack/benchmark/serialize.pl ( view source; MetaCPAN )
rnings;
use Data::MessagePack;
use JSON;
use Storable;
use Benchmark ':all';

my $a = do 'benchmark/data.pl';

print "-- serialize\n";
print "$JSON::Backend: ", $JSON::Backend->VERSION, "\n";
print "D
";
print "Storable: $Storable::VERSION\n";
cmpthese timethese(
    -1 => {
        json     => sub { JSON::encode_json($a) },
        storable => sub { Storable::freeze($a) },
        mp       => sub 

Powered by Groonga
Maintained by Kenichi Ishigaki <ishigaki@cpan.org>. If you find anything, submit it on GitHub.