Rust Redis queue
rsrq is a minimal Redis-backed queue system written in Rust and inspired by RQ.
Overview:
Feedback and contributions are welcome!
Requires Rust 1.70+
shell
cargo install rsrq
If the command rsrq
cannot be found after installation, follow these details.
This is not an exhaustive list of commands, help can be viewed by running the rsrq --help
command.
```shell
rsrq enqueue test /tmp/cmds.txt
rsrq worker test --workers 10
rsrq purge all ```
When using Snakemake integration, a cluster profile will need to be created to map the commands for submit
, status
, and cancel
. You are responsible for starting workers that will process the queue(s).
```shell
rsrq snakemake config /path/to/directory
export REDIS_URL=redis://:your-password@your-endpoint-url
snakemake --profile /path/to/directory ```
You can specify a queue for each rule using the resources.queue
attribute. If none is provided default
will be used, e.g.:
Snakefile
rule foo:
resources:
queue='something'
Note: Workers do not check the CPU/memory usage of the server, it's entirely up to the user to decide how many workers can run concurrently.