[](
https://travis-ci.org/shogo82148/Redis-Namespace) [](
https://metacpan.org/release/Redis-Namespace)
# NAME
Redis::Namespace - a wrapper of Redis.pm that namespaces all Redis calls
# SYNOPSIS
use Redis;
use Redis::Namespace;
my $redis = Redis->new;
my $ns = Redis::Namespace->new(redis => $redis, namespace => 'fugu');
$ns->set('foo', 'bar');
# will call $redis->set('fugu:foo', 'bar');
my $foo = $ns->get('foo');
# will call $redis->get('fugu:foo');
# DESCRIPTION
Redis::Namespace is a wrapper of Redis.pm that namespaces all Redis calls.
It is useful when you have multiple systems using Redis differently in your app.
# OPTIONS
- redis
An instance of [Redis.pm](
https://github.com/melo/perl-redis) or [Redis::Fast](
https://github.com/shogo82148/Redis-Fast).
- namespace
prefix of keys.
- guess
If `Redis::Namespace` doesn't known the command,
call [command info](
http://redis.io/commands/command-info) and guess positions of keys.
It is boolean value.
- strict
It is boolean value.
If it is true, `Redis::Namespace` doesn't execute unsafe commands
which may break another namepace and/or change the state of redis-server, such as `FLUSHALL` and `SHUTDOWN`.
Also, unknown commands are not executed, because there is no guarantee that the command does not break another namepace.
# AUTHOR
Ichinose Shogo <
[email protected]>
# SEE ALSO
- [Redis](
http://redis.io/)
- [Redis.pm](
https://github.com/melo/perl-redis)
- [redis-namespace](
https://github.com/resque/redis-namespace)
# LICENSE
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.