X-Git-Url: http://git.rot13.org/?p=perl-Redis.git;a=blobdiff_plain;f=scripts%2Fredis-benchmark.pl;h=05fcdad79c9cdcb0840d01461db73f4a76863542;hp=e827817f0cedeb587d88d6cc523f3f95c8d96b5c;hb=5bd01e43067423a62065bb664e170324fbe1ddd5;hpb=ac0aee7bc939601d0748a69126de4d1f9eb478eb diff --git a/scripts/redis-benchmark.pl b/scripts/redis-benchmark.pl index e827817..05fcdad 100755 --- a/scripts/redis-benchmark.pl +++ b/scripts/redis-benchmark.pl @@ -5,14 +5,26 @@ use strict; use Benchmark qw/:all/; use lib 'lib'; use Redis; +use Redis::Hash; my $r = Redis->new; +my %hash; +tie %hash, 'Redis::Hash', 'hash'; + +my $i = 0; + timethese( 100000, { - 'ping' => sub { $r->ping }, - 'set' => sub { $r->set( 'bench-' . rand(), rand() ) }, - 'get' => sub { $r->get( 'bench-' . rand() ) }, - 'incr' => sub { $r->incr( 'bench-incr' ) }, - 'lpush' => sub { $r->lpush( 'bench-lpush', rand() ) }, - 'lpop' => sub { $r->lpop( 'bench-lpop' ) }, + '00_ping' => sub { $r->ping }, + '10_set' => sub { $r->set( 'foo', $i++ ) }, + '11_set_r' => sub { $r->set( 'bench-' . rand(), rand() ) }, + '20_get' => sub { $r->get( 'foo' ) }, + '21_get_r' => sub { $r->get( 'bench-' . rand() ) }, + '30_incr' => sub { $r->incr( 'counter' ) }, + '30_incr_r' => sub { $r->incr( 'bench-' . rand() ) }, + '40_lpush' => sub { $r->lpush( 'mylist', 'bar' ) }, + '40_lpush' => sub { $r->lpush( 'mylist', 'bar' ) }, + '50_lpop' => sub { $r->lpop( 'mylist' ) }, + '90_h_set' => sub { $hash{ 'test' . rand() } = rand() }, + '90_h_get' => sub { my $a = $hash{ 'test' . rand() }; }, });