blob: 2efdc230d338522bff614d78f594f452861f1a77 (
about) (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
#!/usr/bin/perl
use IO::Socket;
print( "Connecting..\n" );
my $sck = IO::Socket->new(
"PeerHost" => "127.0.0.1",
"PeerPort" => 6000,
"Blocking" => 1,
"Proto" => "tcp",
"Domain" => IO::Socket::AF_INET,
"Type" => IO::Socket::SOCK_STREAM
) or die "Failed to create socket";
print( "Connected\n" );
my @chars = split( / /, "q w e r t y i o p a s d f g h j k l z x c v b n m" );
my $jlen = scalar( @chars );
srand();
my $junk = "";
sub gen_junk{
$junk = "";
for ( my $jc = 0; $jc < 100; $jc++ ){
$junk .= $chars[rand($jlen)];
}
return $junk;
}
my $kname = "";
sub gen_key_name{
$kname = "";
for ( my $kchars = 0; $kchars < 20; $kchars++ ){
$kname .= $chars[rand($jlen)];
}
return $kname;
}
sub kv_add{
print( "Command:\n*3\r\n\$3\r\nset\r\n\$".length($_[0])."\r\n".$_[0]."\r\n\$".length($_[1])."\r\n".$_[1]."\r\n" );
$sck->send( "*3\r\n\$3\r\nset\r\n\$".length($_[0])."\r\n".$_[0]."\r\n\$".length($_[1])."\r\n".$_[1]."\r\n" ) or die "Failed to add key";
}
sub start_multi{
$sck->send( "MULTI\r\n" ) or die "Failed to start multi";
return;
}
sub end_multi{
$sck->send( "EXEC\r\n" );
return;
}
print( "Adding keys\n" );
start_multi();
for ( my $gc = 0; $gc < 2000000; $gc++ ){
print( "Adding key number ".$gc."\n" );
kv_add( gen_key_name(), gen_junk() );
}
end_multi();
print( "Finished adding keys\n" );
$sck->shutdown( SHUT_RDWR );
undef $chars;
undef $jlen;
undef $sck;
exit( 0 );
|