1个不稳定版本
使用旧的Rust 2015
0.1.0 | 2015年8月20日 |
---|
#23 在 #message-broker
15KB
291 行
disqrust
一个用于实现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