Skip to main content

Redis backend for CherryPy sessions

Project description

CherryPy kicks some serious arse in the ‘I am just a HTTP framework’ category! As of version 3.2 it supports 4 types of storage for sessions by default:

Redis is growing in popularity as an alternative to Memcached (and is fully supported on dotCloud!)

Installation

If you are not using pip yet. Install it and while you are at it consider using virtualenv too.

$ pip install cherrys

redis-py and CherryPy are required dependencies hence will be installed if necessary.

We recommend installing hiredis-py (a faster parser) as well.

$ pip install hiredis

Usage (and abusage)

To tell CherryPy which backend to use, we need to specify the storage_type for the sessions tool. You may want to read more about CherryPy configuration.

tools.sessions.storage_type : 'redis'

But CherryPy doesn’t know Redis. Hence the first thing we need to do is add the cherrys RedisSession class to cherrypy.lib.sessions.

import cherrys
cherrypy.lib.sessions.RedisSession = cherrys.RedisSession

It is that simple!

Config dictionary

There are 4 optional parameters you can set:

  • host [127.0.0.1]
  • port [6379]
  • db [0]
  • password [None]

A full config dictionary to activate Redis backed sessions would look like this.

config = {
    'tools.sessions.on' : True,
    'tools.sessions.storage_type' : 'redis',
    'tools.sessions.host' : 'REDIS_HOST',
    'tools.sessions.port' : 'REDIS_PORT',
    'tools.sessions.db' : 'REDIS_DB',
    'tools.sessions.password' : 'REDIS_PASSWORD'
    }

Project details


Release history Release notifications

This version
History Node

0.4

History Node

0.3

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
cherrys-0.4.tar.gz (3.3 kB) Copy SHA256 hash SHA256 Source None Sep 28, 2011

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page