Rediq
A distributed task queue framework for Rust based on Redis, inspired by Asynq.
Features
- Simple API: Easy-to-use client and server APIs
- Priority Queues: Support for high-priority tasks
- Task Retries: Automatic retry with exponential backoff
- Scheduled Tasks: Support for delayed and cron-based tasks
- Task Dependencies: Execute tasks in dependency order
- Middleware System: Hook into task processing lifecycle
- Metrics: Built-in Prometheus metrics support
- Redis Cluster: Support for standalone, cluster, and sentinel modes
Installation
Add this to your Cargo.toml:
[]
= "0.1"
Quick Start
Producer (Client)
use Client;
use Task;
use Serialize;
async
Consumer (Worker)
use ;
use ;
use Task;
use Result;
;
async
Documentation
For detailed documentation, examples, and API reference, please visit:
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-Apache-2.0 or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Contributions are welcome! Please feel free to submit a Pull Request.