Skip to content
Routing and connection management for Redis in Python
Python Other
  1. Python 99.6%
  2. Other 0.4%
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs fix typo Aug 21, 2015
hooks Fixed the hook Aug 16, 2015
rb 1.7 Jun 22, 2017
tests fix(tests): Improve test compatibility with redis==2.10.6 (#25) Oct 11, 2017
.gitignore Miscellaneous cleanups to `execute_command`. Feb 3, 2016 Always install redis on osx Jan 11, 2016
.travis.yml Added pyenv bin folders for mac travis Aug 19, 2015
CHANGES Updated changelog Jun 22, 2017
LICENSE Initial version of Abanico based on Nydus Aug 13, 2015
Makefile Hide commands that run in makefile Aug 19, 2015 Updated readme Sep 8, 2015 Added missing deps Aug 16, 2015



rb - the redis blaster.

The fastest way to talk to many redis nodes. Can do routing as well as blindly blasting commands to many nodes. How does it work?

For full documentation see


Set up a cluster:

from rb import Cluster

cluster = Cluster({
    0: {'port': 6379},
    1: {'port': 6380},
    2: {'port': 6381},
    3: {'port': 6382},
}, host_defaults={
    'host': '',

Automatic routing:

results = []
with as client:
    for key in range(100):
        client.get(key).then(lambda x: results.append(int(x or 0)))

print 'Sum: %s' % sum(results)


with cluster.fanout(hosts=[0, 1, 2, 3]) as client:
    infos =

Fanout to all:

with cluster.fanout(hosts='all') as client:
You can’t perform that action at this time.