使用Perl连接Redis

使用RedisDB模块从perl中操作Redis。

安装

在Mac上安装Redis。

brew install redis

启动Redis

# server起動
$ redis-server
# cliet起動
$ redis-cli

每个启动选项都需要在执行时添加”–help”。

使用Perl安装Redis模块。

cpanm RedisDB

示例代码 pí

基本的,GET/SET和管道。

use Data::Dumper;

use RedisDB;

my $redis = RedisDB->new(
    host => 'localhost', 
    port => 6379
);

# SET/GET
$redis->set('A', 100);
print Dumper $redis->get('A');
# > $VAR1 = '100'

$redis->mset('1', 10, '2', 20, '3', 30);

# send_commandを使ったパイプライン
my $data = [];
for my $key ( qw/1 2 3/ ) {
  # callback関数を渡せる
  $redis->send_command('GET', $key, sub {
    my ($self, $value) = @_;
    push(@$data, $value);
  });
}
# callback関数が実行されるまでblock
$redis->mainloop;

print Dumper $data;
# > $VAR1 = [
#           '10', 
#           '20', 
#           '30', 
#           ];

除了传递回调callback之外,send_command还可以使用get_all_replies等方式接收值。

尽管基本的Redis命令已被封装,但需要注意hgetall方法的返回值可能是一个数组。

提供的资源

RedisDB模块
http://search.cpan.org/dist/RedisDB/lib/RedisDB.pm

Redis 命令列表
http://redis.io/commands

广告
将在 10 秒后关闭
bannerAds