Zookeeper优先级队列

时间:2012-09-18 12:56:27

标签: distributed-computing web-crawler priority-queue apache-zookeeper

我的问题描述如下: 我有基于状态的数据库无限抓取工具: 目前它是如何发生的:

  • 我们正在使用一台机器进行抓取。
  • 我们有三个级别的优先级队列。高,中,低。
  • 启动时,所有数据库作业都被放入较低级别的队列中。
  • Worker从队列中读取作业并进行操作。
  • 完成工作后,延迟5分钟重新安排工作。

解决方案我找到了

对于优先级队列,我可以使用:

-    http://zookeeper.apache.org/doc/r3.2.2/recipes.html#sc_recipes_priorityQueues

我仍在搜索的问题解决方案是:

  1. 如何使用将来的计划时间重新安排队列中的作业。在那儿 在zookeeper中这样做的方法吗?
  2. 取消已经开始的工作。假设用户更改了他的数据库 验证细节。我想停止为此工作 数据库并重新启动新的详细信息  我想在启动一个工人的时候它会订阅它 这是znode的变化,如果发生了什么事,它将停止这项工作 重新安排它。
  3. 无限队列 我认为在完成它之后会将其从队列中删除 用未来的计划时间读取它。 (它的实施取决于第1点)
  4. 执行此任务的无限任务是否正确?

0 个答案:

没有答案
相关问题