Skip to main content

Python client for Cluster of Redis key-value store

Project description

a Python interface to a Cluster of Redis key-value store.

## Travis CI

Currently, rediscluster-py is being tested via travis ci for python version 2.6, 2.7 and 3.2: [![Build Status](https://secure.travis-ci.org/salimane/rediscluster-py.png?branch=master)](http://travis-ci.org/salimane/rediscluster-py)

## Installation

$ sudo pip install rediscluster

or alternatively (you really should be using pip though):

$ sudo easy_install rediscluster

From source:

$ sudo python setup.py install

## Running Tests

$ git clone https://github.com/salimane/rediscluster-py.git $ cd rediscluster-py $ vi tests/config.py $ ./run_tests

## Getting Started

>>> import rediscluster
>>> cluster = {
...          'nodes' : {
...                      'node_1' : {'host' : '127.0.0.1', 'port' : 63791},
...                      'node_2' : {'host' : '127.0.0.1', 'port' : 63792},
...                      'node_5' : {'host' : '127.0.0.1', 'port' : 63795},
...                      'node_6' : {'host' : '127.0.0.1', 'port' : 63796}
...                    },
...          'master_of' : {
...                          'node_1' : 'node_6', #node_6 slaveof node_1 in redis6.conf
...                          'node_2' : 'node_5'  #node_5 slaveof node_2 in redis5.conf
...                        },
...          'default_node' : 'node_1'
...     }
>>> r = rediscluster.StrictRedis(cluster=cluster, db=0)
>>> r.set('foo', 'bar')
True
>>> r.get('foo')
'bar'

##Tagged keys

In order to specify your own hash key (so that related keys can all land on a given node), you pass a list where you’d normally pass a scalar. The first element of the list is the key to use for the hash and the second is the real key that should be fetched/modify:

>>> r.get(["userinfo", "foo"])

In that case “userinfo” is the hash key but “foo” is still the name of the key that is fetched from the redis node that “userinfo” hashes to.

## Information

Author

rediscluster-py is developed and maintained by Salimane Adjao Moustapha (me@salimane.com). It can be found here: http://github.com/salimane/rediscluster-py

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rediscluster-0.2.1.tar.gz (7.2 kB view hashes)

Uploaded Source

Built Distributions

rediscluster-0.2.1.win32-py3.2.exe (71.4 kB view hashes)

Uploaded Source

rediscluster-0.2.1.win32-py2.7.exe (71.5 kB view hashes)

Uploaded Source

rediscluster-0.2.1-py3.2.egg (12.9 kB view hashes)

Uploaded Source

rediscluster-0.2.1-py2.7.egg (12.8 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page