#!/usr/bin/perl
use
5.010;
my
(
$pipeline
,
$size
,
$count
) = ( 1, 16, 50_000 );
GetOptions(
"pipeline!"
=> \
$pipeline
,
"size=i"
=> \
$size
,
"count=i"
=> \
$count
,
) or
die
;
say
"RedisDB: "
, RedisDB->VERSION;
say
"Testing "
, (
$pipeline
?
"in pipeling mode"
:
"in synchronous mode"
);
say
"Data chunk size "
,
$size
;
say
"Number of chunks "
,
$count
;
my
$srv
= Test::RedisDB->new;
my
$redisdb
=
$srv
->redisdb_client;
my
$chunk
=
'x'
x
$size
;
my
@cb
=
$pipeline
? RedisDB::IGNORE_REPLY : ();
my
$start
=
time
;
for
( 1 ..
$count
) {
$redisdb
->set(
"RDB$_"
,
$chunk
,
@cb
);
$redisdb
->get(
"RDB$_"
,
@cb
);
}
$redisdb
->mainloop;
printf
"Time: %.3fs\n"
,
time
-
$start
;