Skip to main content

The repoze.what Redis plugin

Project description

This is an adapters plugin for repoze.what

The Redis plugin makes repoze.what support sources defined in Redis key-value databases by providing one group adapter and one permission adapter.

Redis

Redis is a key-value database. It is similar to memcached but the dataset is not volatile, and values can be strings, exactly like in memcached, but also lists and sets with atomic operations to push/pop elements.

In order to be very fast but at the same time persistent the whole dataset is taken in memory and from time to time and/or when a number of changes to the dataset are performed it is written asynchronously on disk.

The database name is numeric; the default database is 0.

repoze.what.plugin.redis uses database 1 for the group adapter and database 2 for the permission adapter.

The database 0 could be used for any table related to users as the sessions.

Building

To compile the trunk version:

$ git clone git://github.com/antirez/redis.git
$ cd redis
$ make

To update:

$ git pull && make clean && make

To run the server:

$ ./redis-server

The Python library is in ./client-libraries/python/

Note: The client-libraries directory inside the Redis distribution is only a temp thing.

Little issues

  • If the client is disconnected after of some time of inactivity –it’s configured to 300 seconds by default–, and it’s called any command then it raises a ConnectionError. It should be rather managed from the Python driver:

    http://groups.google.com/group/redis-db/browse_thread/thread/2581396a6722d3f9

  • The data are synchronously saved. It could be modified the _save function (in the Redis adapter) for that it been asynchronously saved, or for that it been saved only when a number of changes to the dataset are performed.

Use

Typical usage:

>>> import redis
>>> from repoze.what.plugins.redis import adapters
>>> group = adapters.RedisGroupAdapter(redis.Redis())
>>> permission = adapters.RedisPermissionAdapter(redis.Redis())

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

repoze.what.plugins.redis-1.0rc1.tar.gz (10.2 kB view details)

Uploaded Source

File details

Details for the file repoze.what.plugins.redis-1.0rc1.tar.gz.

File metadata

File hashes

Hashes for repoze.what.plugins.redis-1.0rc1.tar.gz
Algorithm Hash digest
SHA256 dac393eb4ea5123317ce16fa3c124f4d14ac879bc11af367f790395dc88d627b
MD5 e5e81601ac9652d4bce2d3deb97ba6bb
BLAKE2b-256 4c7ac7fa54d16c79eb3e2ff287f92200b6ac011069a0f7f2390c163058620d42

See more details on using hashes here.

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