Distributed locking in Django
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file django-distributedlock-0.5.0.tar.gz
.
File metadata
- Download URL: django-distributedlock-0.5.0.tar.gz
- Upload date:
- Size: 8.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 19d1dbdb328711b0a4200b578db3f18ce4db02a5e02f62acfcbe278b16f8bb7c |
|
MD5 | e5b0487e9b7c26c10669a25ccfb67aad |
|
BLAKE2b-256 | 732a1b4719283227212fd30040d24a70c47e89c39f742bef1a61bc058c69eca2 |
File details
Details for the file django_distributedlock-0.5.0-py3-none-any.whl
.
File metadata
- Download URL: django_distributedlock-0.5.0-py3-none-any.whl
- Upload date:
- Size: 8.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4a508cf04626ec202206195dbd43c4d937b7170ae1e1045339275da25d04f26d |
|
MD5 | bb70c9594ef4358804be08e197b5a5c5 |
|
BLAKE2b-256 | 9107a01ee5ee43116ed20e961a051476b8d3af2f2acf4e878678f3927c535e3a |