2 releases

0.1.1 May 31, 2023
0.1.0 Jan 16, 2023

#1088 in Database interfaces

Download history 20/week @ 2024-02-21 32/week @ 2024-02-28

52 downloads per month

MIT license

11KB
167 lines

redeez


A simplified general-purpose queueing system for Rust apps.

Example

// Create a new Redeez object, and define your queues
let mut queues = Redeez::new(redis)
        .queue("avatars:resize", |job| -> Result<()> {
            // -- snip --

            Ok(())
        })
        .queue("images:resize", resize_images);

// Start queue workers in the background
queues.listen();

// Dispatch some jobs into the queue
queues.dispatch("images:resize", json!(["image1.jpg", "image2.jpg"]));
queues.dispatch("avatars:resize", json!(["avatar1.jpg", "avatar2.jpg"]));

// When shutting your program down, stop listening for jobs
queues.shutdown();

Acknowledgements

This project is very heavily inspired by v3xlabs' redeez npm package. Extra thanks to @lucemans for helping me understand Redis.

License

Redeez is released under the MIT License. See the LICENSE file for details.

Dependencies

~6–18MB
~236K SLoC