Skip to main content

The quickest way to setup async tasks with Django.

Project description

Django Quick Queue

Django Quick Queue is a fast and simple way to use async tasks in Django. This package has a limited use case. If you are looking for a more complex async task systems you should try Django Q, Celery, or Huey. Quick Queue is meant to give you the simplest method to started executing small asynchronous tasks.

Installation

1. Install Package

pip install quickq

2. Add Base URL to settings.py

QQ_BASE_URL = 'https://mysite.example.com'

3. Setup the view in your urls.py

from quickq import taskinator

urlpatterns = [
  url(r'^taskinator/(\S+)$', taskinator, name="taskinator"),
  ...
]

4. Add the decorator to any function

from quickq import Task

@Task()
def send_approved (name, slug, email):
    send_mail(
      'Yay E-mail!',
      message,
      settings.DEFAULT_FROM_EMAIL,
      [email],
      fail_silently=False,
    )

5. Execute your task as normal

send_email('Narf', 'narf-me', 'narf@aol.com')

How it Works

  1. Your task is called

    1. A PyJWT is generated.

    2. The taskinator URL is called asynchronously.

  2. Taskinator view executed

    1. Decodes the JWT.

    2. Excutes the original task function outside of the original request.

Limitations

  • Function arguments are converted to JSON so they must be JSON compatible.

  • Request time may be limited. If your webserver has a limitation on request time then that will also affect how long your tasks can execute since they are simply web requests.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

quickq-17.8.2-py2.py3-none-any.whl (4.5 kB view hashes)

Uploaded Python 2 Python 3

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