Django_dramatiq

screenshot of Django_dramatiq
django

A Django app that integrates with Dramatiq.

Overview

django_dramatiq is a Django app that integrates with Dramatiq. It requires Python 3.8+, Django 3.2+, and Dramatiq 1.11+ for operation. This integration allows for the declaration of tasks, running workers, testing, middleware customization, and more within the Django framework.

Features

  • Task Declaration: Automatically discovers tasks defined in tasks modules within installed apps.
  • Worker Management: Provides a management command to auto-discover task modules and run workers.
  • Testing Support: Supports separate settings for testing and utilizes pytest-django or unittest for testing background tasks.
  • Garbage Collection: Includes functionality to clean up old tasks using the delete_old_tasks actor.
  • Middleware Customization: Allows for custom keyword arguments to middleware for dynamic configuration.
  • Usage with django-configurations: Provides guidance on using django_dramatiq with django-configurations for custom commands.

Summary

django_dramatiq is a valuable integration for Django developers looking to incorporate asynchronous task queuing provided by Dramatiq seamlessly into their projects. It simplifies task declaration, worker management, testing, middleware customization, and integration with django-configurations. By following the installation and usage instructions, developers can enhance the efficiency and performance of their Django applications by leveraging the capabilities of Dramatiq with ease.

django
Django

Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design. It follows the model-view-controller (MVC) architectural pattern, providing an extensive set of built-in tools and conventions to streamline the creation of robust and scalable web applications.