25个版本

0.12.0 2022年9月23日
0.11.0 2021年12月9日
0.10.1 2021年11月22日
0.9.1 2021年4月5日
0.1.3 2016年6月5日

#1348 in 数据库接口

Download history 1337/week @ 2024-03-14 1253/week @ 2024-03-21 1041/week @ 2024-03-28 1174/week @ 2024-04-04 1239/week @ 2024-04-11 927/week @ 2024-04-18 778/week @ 2024-04-25 627/week @ 2024-05-02 535/week @ 2024-05-09 733/week @ 2024-05-16 439/week @ 2024-05-23 488/week @ 2024-05-30 563/week @ 2024-06-06 707/week @ 2024-06-13 920/week @ 2024-06-20 688/week @ 2024-06-27

2,974 每月下载量
用于 maman

MIT 许可证

15KB
239

Rust Sidekiq 客户端

Sidekiq 客户端,允许推送工作。以Sidekiq 工作格式为参考。

依赖项

安装

[dependencies]
sidekiq = "0.12"

默认环境变量

  • REDIS_URL="redis://127.0.0.1/"

被使用于

示例

use sidekiq::{Job, Value};
use sidekiq::{Client, ClientOpts, create_redis_pool};
use time::{OffsetDateTime, Duration};

let ns = "test";
let client_opts = ClientOpts {
    namespace: Some(ns.to_string()),
    ..Default::default()
};
let pool = create_redis_pool().unwrap();
let client = Client::new(pool, client_opts);
let class = "MyClass".to_string();

// basic job
let job = Job::new(class, vec![sidekiq::Value::Null], Default::default());
match client.push(job) {
    Ok(_) => {},
    Err(err) => {
        println!("Sidekiq push failed: {}", err);
    },
}

// scheduled-jobs (perform_in)
let job = Job::new(class, vec![sidekiq::Value::Null], Default::default());
let interval = Duration::hours(1);
match client.perform_in(interval, job) {
    Ok(_) => {},
    Err(err) => {
        println!("Sidekiq push failed: {}", err);
    },
}

// scheduled-jobs (perform_at)
let job = Job::new(class, vec![sidekiq::Value::Null], Default::default());
let start_at = OffsetDateTime::now_utc().checked_add(Duration::HOUR).unwrap();
match client.perform_at(start_at, job) {
    Ok(_) => {},
    Err(err) => {
        println!("Sidekiq push failed: {}", err);
    },
}

参考

许可证

MIT许可证

版权所有 (c) 2016-2021 Laurent Arnoud [email protected]


Build Version Documentation License Dependency status

依赖项

~10–20MB
~326K SLoC