动物园管理员队列延迟?

问题描述:

你们建议如何在zookeeper中实现一个能够延迟工作而不阻止工作人员的好方法?动物园管理员队列延迟?

参考beanstalkd延迟作业选项。

+0

“延迟工作而不阻止工作人员”是什么意思? – 2012-02-06 23:05:53

+0

这意味着我不想要一个工人,把工作从队列中卸下来睡觉让我们说一个小时,直到它开始处理工作 – schone 2012-02-07 06:47:51

你需要的是开发一个使用zookeeper的障碍。

我假设“延迟时间”是由另一个称为master的进程设置的。

法师首先创建一个节点说/工作/标志与数据“假”

什么工人需要做的就是,看着节点/工作/标志。观察者会以异步方式回电,以便在工作人员中做其他事情,不会阻止。

到时候,master会将/ work/flag数据设置为“true”,这会导致一个ZOO_CHANGED_EVENT事件。

而工人应该在/ work/flag中将事件回调称为“ZOO_CHANGED_EVENT”。然后它可以获取并检查/ work/flag是否为true,并确定是否继续工作流程。