1个不稳定版本

使用旧的Rust 2015

0.1.0 2015年8月20日

#23#message-broker

自定义许可证

15KB
291

disqrust

Build Status

一个用于实现Disque工作者的高级库。

该包名为 disqrust,您可以通过Cargo来依赖它

[dependencies]
disqrust = "0.1.0"

目前需要Rust Beta或Nightly版本。

基本操作

extern crate disque;
extern crate disqrust;

use disque::Disque;
use disqrust::{EventLoop, Handler, JobStatus};

#[derive(Clone)]
struct MyHandler(u8);

impl Handler for MyHandler {
    fn process_job(&self, queue_name: &[u8], jobid: &String, body: Vec<u8>) -> JobStatus {
        match queue_name {
            b"send email" => { /* send email */; JobStatus::AckJob },
            _ => JobStatus::NAck,
        }
    }
}

fn main() {
    let disque = Disque::open("redis://127.0.0.1:7711/").unwrap();
    let mut el = EventLoop::new(disque, 4, MyHandler(0));
    el.watch_queue(b"my queue".to_vec());
    el.run(1000);
}

文档

要获取所有可用函数和参数的更全面文档,请访问 http://seppo0010.github.io/disqrust/

关于Disque的完整参考,请查看 https://github.com/antirez/disque

依赖

~2.5MB
~70K SLoC