Skip to main content

A Memcached Pool for Django

Project description

An efficient fast Django Memcached backend with a pool of connectors, based on pymemcache.

See https://github.com/zhumengyuan/djmemcache

Each connection added in the pool stays connected to Memcache or Membase, drastically limiting the number of reconnections and open sockets your application will use on high load.

If you configure more than one Memcache server, each new connection will randomly pick one.

Everytime a socket timeout occurs on a server, it’s blacklisted so new connections avoid picking it for a while.

To use this backend, make sure the package is installed in your environment then use djmemcache.backend.PyMemcacheCache as backend in your settings.

Here’s an example:

CACHES = {
    'default': {
        'BACKEND': 'djmemcache.backend.PyMemcacheCache',
        'LOCATION': '127.0.0.1:11211',
        'OPTIONS': {
                'MAX_POOL_SIZE': 100,
                'KEY_PREFIX': b'uuboard_prefix',
                'TIMEOUT': 30,
                'CONNECT_TIMEOUT': 30,
                'IGNORE_EXC': True,
                'USE_POOLING': True
            }
        }
    }

Options:

  • MAX_POOL_SIZE: – The maximum number of connectors in the pool for eatch host. default: 2 ** 31.

  • KEY_PREFIX – The time in seconds a server stays in the blacklist. default: b’’

  • TIMEOUT – The time in seconds for the socket timeout. defaults to “forever”

  • CONNECT_TIMEOUT – The time in seconds for the connect socket timeout. defaults to “forever”

  • USE_POOLING – Whether to apply the connection pool. defaults to “True”

2015-04-30 - 0.1

  • Initial release

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

djmemcache-0.13.tar.gz (3.2 kB view details)

Uploaded Source

File details

Details for the file djmemcache-0.13.tar.gz.

File metadata

  • Download URL: djmemcache-0.13.tar.gz
  • Upload date:
  • Size: 3.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.2

File hashes

Hashes for djmemcache-0.13.tar.gz
Algorithm Hash digest
SHA256 31045bf474bb496c8c605bc79d45f5c19ddf980f8cccba7ba2b74f3d6106c875
MD5 3b379787f06fdcab40e4d51ae95d9f47
BLAKE2b-256 a84db15631d4a9ea6d76bc5481ac5d0d6afc6c47ca7b4e619945c74da6c4e26b

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