Chancy is a distributed task queue and scheduler for Python built on top of Postgres, with basic support for the django ORM, admin, and auth integration for the dashboard.
Check it out on github (GitHub - TkTech/chancy: A postgres-backed task queue for Python.) or the latest docs (Chancy)
- Robust Jobs - support for priorities, retries, timeouts, scheduling, global rate limits, memory limits, global uniqueness, error capture, cancellation, and more
- Minimal dependencies - Core functionality requires only psycopg3 - which can be installed side-by-side with psycopg2.
- Minimal infrastructure - No need to run a separate service like RabbitMQ or redis. Every feature is built on top of Postgres. No need for separate monitoring services like Flower or schedulers like Celery Beat - everything is built-in to the worker.
- Plugins - Several plugins including a dashboard, workflows, cron jobs, and more.
- Flexible - A single worker can handle many queues and mix threads, processes, sub-interpreters, and asyncio jobs, allowing powerful workflows that use the optimal concurrency model for each job. Queues can be created, deleted, modified, and paused at runtime.
- async-first - Internals designed from the ground up to be async-first, but has minimal sync APIs for easy integration with existing non-async codebases.
- Transactional enqueueing - Atomically enqueue jobs and the data they depend on in a single transaction.
- Performant - Used in production environments to process millions of jobs per day.
- Portable - Supports Linux, OS X, and Windows.
- 100% open & free - no enterprise tiers or paid features.
(I had a lot more screenshots here, but it turns out new users are only allowed one image at a time )