Django application. It's a simple system to process queue task in real time.
Project description
It’s a simple system to process queue task in real time.
Requirements
python 2.7
Django 1.6 through Django 1.9
django-redis-cache
Install
Download it from PyPi with pip install django-async-tasks
Add “async_tasks” to your INSTALLED_APPS setting like this:
INSTALLED_APPS = ( ... 'async_tasks', )
Configure settings
Set setting name that defined for Redis in settings.CACHES. The default used ‘default’ setting name.
ASYNC_TASKS_REDIS_SETTING_NAME = 'default'
Setup log path and log filename. The default used for path os.path.join(BASE_DIR, 'logs') and filename 'async-tasks.log'.
ASYNC_TASKS_LOG_PATH = os.path.join(BASE_DIR, 'logs') # Log path ASYNC_TASKS_LOG_FILENAME = 'async-tasks.log' # Log filename
Add cron job to execute every minute:
python manage.py django_async_tasks
How to use?
Add task to execute delayed_task(your_function, **params), return identification code
Check is task ready ready_task(identification_code). Return statuses: 'PROCESS', 'SUCCESS', 'FAIL'
Get result result_task(identification_code)
Example
from async_tasks.utils import delay_task, ready_task, result_task
def test(a, b):
return a + b
def test_delay_task():
idn = delay_task(test, **{'a': 1, 'b': 2})
status = None
while status not in ['SUCCESS', 'FAIL']:
status = ready_task(idn)
if status == 'SUCCESS':
print result_task(idn)
else:
print status
if __name__ == "__main__":
test_delay_task()
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
File details
Details for the file django-async-tasks-0.1.1.tar.gz
.
File metadata
- Download URL: django-async-tasks-0.1.1.tar.gz
- Upload date:
- Size: 13.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c8409e090540266da4122f3a727883f209604d2ccbd5ea294c3853cd16a3b09f |
|
MD5 | aa3b68a3ad2eb65a6f16dd3fe3ae3986 |
|
BLAKE2b-256 | 3514f092656e3e8fae328cbf76308d631240c5386ec47ec7f8deacf7dd2fdaf1 |