Skip to main content

Redis Cache Backend for Django. (This is fork of django-redis-cache)

Project description

==========================
Redis Django Cache Backend
==========================

A simple Redis cache backend for Django

Redis cache allows you to use either a TCP connection or Unix domain
socket to connect to your redis server. Using a TCP connection is useful for
when you have your redis server separate from your app server and/or within
a distributed environment. Unix domain sockets are useful if you have your
redis server and application running on the same machine and want the fastest
possible connection.

You can specify (optionally) what parser class you want redis-py to use
when parsing messages from the redis server. redis-py will pick the best
parser for you implicitly, but using the ``PARSER_CLASS`` setting gives you
control and the option to roll your own parser class if you are so bold.

Notes
-----

This cache backend requires the `redis-py`_ Python client library for
communicating with the Redis server.

Redis writes to disk asynchronously so there is a slight chance
of losing some data, but for most purposes this is acceptable.

This cache backend is full ready for `django-orm`_ cache.


How to install.
---------------

Run ``python setup.py install`` to install,
or place ``redis_cache`` on your Python path.

You can also install it with: ``pip install django-redis``


Usage cache backend.
--------------------

Modify your Django settings to use ``redis_cache`` ::

# When using TCP connections
CACHES = {
'default': {
'BACKEND': 'redis_cache.cache.RedisCache',
'LOCATION': '<host>:<port>',
'OPTIONS': {
'DB': 1,
'PARSER_CLASS': 'redis.connection.HiredisParser'
},
},
}

# When using unix domain sockets
# Note: ``LOCATION`` needs to be the same as the ``unixsocket`` setting
# in your redis.conf
CACHES = {
'default': {
'BACKEND': 'redis_cache.cache.RedisCache',
'LOCATION': '/path/to/socket/file',
'OPTIONS': {
'DB': 1,
'PASSWORD': 'foopassword',
'PICKLE_VERSION': -1, # default
'PARSER_CLASS': 'redis.connection.HiredisParser'
},
},
}


Usage redis_cache.stats django-app.
-----------------------------------

1. Place ``redis_cache.stats`` on your INSTALLED_APPS.

2. Add this url on your urls.py::

url(r'^redis/status/', include('redis_cache.stats.urls', namespace='redis_cache'))


Note: only tested with django >= 1.3


TODO:
-----

* Improve stats django-app: add more administration options.
* Add garbage collection and memory limits options.

.. _redis-py: http://github.com/andymccurdy/redis-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

django-redis-1.5.1.tar.gz (41.9 kB view details)

Uploaded Source

File details

Details for the file django-redis-1.5.1.tar.gz.

File metadata

File hashes

Hashes for django-redis-1.5.1.tar.gz
Algorithm Hash digest
SHA256 04c14717259389b2c1882d07ba79e78b71164b4ba7c29c59a5517017afcb10ea
MD5 0310e1885b68b36c6d98a631a717bf9d
BLAKE2b-256 d2d5b2e8f51d6027f1c453e12e64f33901185c00f613ee34cbe014c0b5b39870

See more details on using hashes here.

Provenance

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