15 releases

0.9.4 Oct 23, 2024
0.9.3 Jul 10, 2024
0.9.2 Apr 29, 2024
0.9.1 Nov 4, 2023
0.6.0 Jul 21, 2023

#377 in Asynchronous

MIT license

330KB
539 lines

Taskline

Crates.io CI Docs.rs

The library allows for creating scheduled tasks via Redis for Rust.

producer.schedule(&"Hello!".to_string(), &(now() + 30000.)).await;

loop {
    let tasks = consumer.poll(&now()).await.unwrap();

    for task in tasks {
        println!("Consumed {:?}", task);
    }
}

That means the Consumed will be printed in 30 seconds.

You can customize a format of an event for redis. Write your wrapper over RedisBackend. See redis_json backend.

diagram

Features

  • Send/receive tasks in Redis
  • Delayed tasks
  • Support json
  • Deleting from a storage after handling
  • Support Redis Cluster
  • Metrics

Requirements

  • Redis 6.2.0 or higher

Installation

Cargo

cargo add taskline

License

Contribution

CONTRIBUTING.md

Dependencies

~0.2–9.5MB
~94K SLoC