Skip to main content

A distributed lock

Project description

django-distributedlock

A django app for functions or tasks that needs distributed lock, e.g. for management commands that used in cron jobs

Instalation

Install with pip in your environment:

$ pip install django-distributedlock

Add in your settings.py in INSTALLED_APPS

INSTALLED_APPS = (
...
'distributedlock',
...
)

django-distributedlock can be work with django cache or a database model, you must to set the client in the variable DISTRIBUTEDLOCK_CLIENT, with the values cache or database according your needs.:

DISTRIBUTEDLOCK_CLIENT="cache"       # or "database"

Use

For register a distrbuted function with decorator:

from distributedlock import distributedlock

@distributedlock()
def my_task():
    print "running"

or you can use the sentence with:

with distributedlock('my_key_task'):
    print 'running'

Tests

Once installed in your django project:

django-admin.py test distributedlock

Needs gevent installed only for tests purpose.

Some ideas were take from https://github.com/snbuback/DistributedLock

© 2013 Scryent License BSD

Current code @ https://github.com/15five/django-distributedlock

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-distributedlock-0.3.3.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_distributedlock-0.3.3-py2.py3-none-any.whl (7.8 kB view details)

Uploaded Python 2Python 3

File details

Details for the file django-distributedlock-0.3.3.tar.gz.

File metadata

File hashes

Hashes for django-distributedlock-0.3.3.tar.gz
Algorithm Hash digest
SHA256 3ba1e5e6e87e99405a20165c8f31264c1b0bea48c9465f9a7d374364e10670c8
MD5 97885e44501b9431948a025c7d548892
BLAKE2b-256 c8f5b7924cee0c9b60745230689ac8671b4df895f49430b8b66e548105fbff3b

See more details on using hashes here.

File details

Details for the file django_distributedlock-0.3.3-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for django_distributedlock-0.3.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f104b6a440d4f5868500d8438abb63aaaee5b2c47639060c02f484d1ed582932
MD5 79bdc963950b806e321b96a8eaa2a7a5
BLAKE2b-256 7de30fac559a77446d7a07587dd34090b52d7d18f3492cc39b751a0796ab52d2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page