Skip to main content

Django cache backend supporting MemCachier service

Project description

# memcachier-django-ascii

This package provides a memcached cache backend for Django using
[pymemcache](https://github.com/pinterest/pymemcache). We generally
prefer [pylibmc](https://github.com/lericson/pylibmc) but it depends
on a [libmemcached](http://libmemcached.org) which can sometimes cause
issues. Pymemcache is a pure python client.

This package only works with the ASCII protocol and a single memcache
server.

*NOTE:* In general we recommend
[django-pylibmc](https://github.com/jbalogh/django-pylibmc/), but in
rare situations this package works better.

## MemCachier & Authentication

This backend only supports the memcached ASCII protocol, which
normally doesn't support authentication. MemCachier requires
authentication, and adds it in very simply by requiring all new
connections issue a set:

```
$ set <username> 0 0 <password length>\r\n
$ <password>\r\n
```

formatted as above to communicate credentials.

## Requirements

Requires Django 1.3+. It was written and tested on Python 2.7.

## Installation

Get it from pypi:

```
$ pip install memcachier-django-ascii
```

or github:

```
$ pip install -e git://github.com/memcachier/django-ascii.git
```

## Usage

Your cache backend should look something like this:

```
CACHES = {
'default': {
'BACKEND': 'memcache_fix.backend.PyMemcacheCache',
'OPTIONS': {
'no_delay': True,
'connect_timeout': 2,
'timeout': 2,
}
}
}
```

*NOTE*: The backend currently only supports connecting to one server.

## Configuration with Environment Variables

Optionally, the memcached connection can be configured with
environment variables (on platforms like Heroku). To do so, declare
the following variables:

```
MEMCACHE_SERVERS
MEMCACHE_USERNAME
MEMCACHE_PASSWORD
```

## Author

Forked from [django-pymemcache](https://github.com/jsocol/django-pymemcache).

## Get involved!

We are happy to receive bug reports, fixes, documentation enhancements,
and other improvements.

Please report bugs via the
[github issue tracker](http://github.com/memcachier/django-ascii/issues).

Master [git repository](http://github.com/memcachier/django-ascii):

* `git clone git://github.com/memcachier/django-ascii.git`

## Licensing

This library is licensed under the Apache Software License 2.0

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

memcachier-django-ascii-1.0.0.dev1.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

memcachier_django_ascii-1.0.0.dev1-py2.py3-none-any.whl (6.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file memcachier-django-ascii-1.0.0.dev1.tar.gz.

File metadata

File hashes

Hashes for memcachier-django-ascii-1.0.0.dev1.tar.gz
Algorithm Hash digest
SHA256 ed922f694d39d61637f463a6eaa28173735966a766045803f228468a54434e34
MD5 6763e134e44397baa0ed0dd2a8282204
BLAKE2b-256 57f97680b857231a3c1826269bd4ab057025e88a842e7dd1670aa81f4e99bef9

See more details on using hashes here.

File details

Details for the file memcachier_django_ascii-1.0.0.dev1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for memcachier_django_ascii-1.0.0.dev1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 b326e4015a502efc37f1a9624b11e54012302dd333ac39021cada1680ed4eaa4
MD5 f32478e0fb2fb28aa37478d09edca76f
BLAKE2b-256 898eb9ee8a02508b9bbc0e7d6f6c83e3b97546501ad82ba73a4e9944f34cc1f1

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