DEV Community

Prabhat Verma
Prabhat Verma

Posted on

Introducing pybgworker — A Lightweight Python Background Worker Without Redis or RabbitMQ

I’ve been working on an open-source project called pybgworker, a lightweight background task worker for Python applications that works without Redis or RabbitMQ, using SQLite instead.

The goal was to make background job processing simple for projects where running extra infrastructure is unnecessary.

✅ Background task execution
✅ Retries & scheduling
✅ Task priorities
✅ Graceful worker shutdown
✅ Crash recovery
✅ Task cancellation
✅ Configurable timeouts
✅ Rate limiting per task
✅ Multiple worker support
✅ No external services required

Example usage:

from pybgworker import task

@task(name="tasks.hello")
def hello(name):
    print("Hello", name)

hello.delay("World")

Enter fullscreen mode Exit fullscreen mode

Run worker:

pybgworker run --app tasks

Enter fullscreen mode Exit fullscreen mode

That’s it — background jobs running.

The package has already crossed ~600 downloads in just 5 days, which was really encouraging, and I’m continuing to improve documentation and features.

I’d love feedback, suggestions, and contributions from the community.

🔗 GitHub: Github

🔗 PyPI: Pypi

Top comments (0)