Skip to main content

Task runner for Django 3 without requiring other services

Project description

Django Simple Task

Github Actions Code Coverage Python Version PyPI Package License

django-simple-task runs background tasks in Django 3 without requiring other services and workers. It runs them in the same event loop as your ASGI application. It is not resilient as a proper task runner such as Celery, but works for some simple tasks and has less overall overheads.

Guide

Install the package:

pip install django-simple-task

Added it to installed apps:

# settings.py
INSTALLED_APPS = [
	...
	'django_simple_task'
]

Apply ASGI middleware :

# asgi.py
from django_simple_task import django_simple_task_middlware
application = django_simple_task_middlware(application)

Call a background task in Django view:

from django_simple_task import defer

def task1():
	time.sleep(1)
	print("task1 done")

async def task2():
	await asyncio.sleep(1)
	print("task2 done")

def view(requests):
	defer(task1)
	defer(task2)
	return HttpResponse(b"My View")

It is required to run Django with ASGI server. Official Doc

Configurations

Concurrency level can be controlled by adding DJANGO_SIMPLE_TASK_WORKERS to settings. Defaults to 1.

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-simple-task-0.1.1.tar.gz (4.2 kB view details)

Uploaded Source

Built Distribution

django_simple_task-0.1.1-py3-none-any.whl (5.1 kB view details)

Uploaded Python 3

File details

Details for the file django-simple-task-0.1.1.tar.gz.

File metadata

  • Download URL: django-simple-task-0.1.1.tar.gz
  • Upload date:
  • Size: 4.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.0 CPython/3.7.4 Darwin/18.7.0

File hashes

Hashes for django-simple-task-0.1.1.tar.gz
Algorithm Hash digest
SHA256 9f89c4b68cc6ae1fe6171de9d68a4478a5af028de9989b1df7a2563eae039252
MD5 0f0dac9f6c36a5fe2e423034847b8995
BLAKE2b-256 ea7a1df32a05235d353224ffc62188200dcad638bd569e85bf589bf1aaeed27a

See more details on using hashes here.

File details

Details for the file django_simple_task-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for django_simple_task-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ece167863bc39614d1b578a5f507065bd4fa38cf6f24236a5792a8010d7969a1
MD5 2924404b87f30a955e029f4537be3719
BLAKE2b-256 1f5d1ea071ed3947009cdf067f36d3c28b9390dfb57a87f9a266110287487178

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