【问题标题】:Work Queue Solution工作队列解决方案
【发布时间】:2012-10-14 09:00:45
【问题描述】:

我正在研究工作队列的新解决方案。队列(或多个队列)将包含工作项,这些工作项将由人类使用基于 Web 的软件系统来处理,该系统使用队列中的项。因此,工作队列中的项目可能会在队列中保留很长时间。队列解决方案不需要处理大吞吐量,它不需要是一个快速的系统,但应该以与消息队列相同的方式运行。即多个消费者以先进先出消息为食。

除了工作消费者之外,我还需要能够管理队列。查看队列中的工作项、编辑它们、删除它们、更改优先级等……

我研究过 ActiveMQ、RabbitMQ、HornetQ 和其他符合 JMS 的队列解决方案。这些似乎都很好,即可扩展、健壮等。但缺乏满足我要求的内置管理能力。它们似乎也是为高吞吐量而构建的。

我要替换的系统由一个简单地实现为数据库模式的队列系统组成。工作项消费者从表而不是内存队列中选择。除了可扩展性之外,我不确定 ActiveMQ 等内存解决方案相对于现有系统有什么好处。

我的问题是:我应该基于这些解决方案之一构建我的工作队列系统,ActiveMQ、Rabbit、Hornet.. 等等。还是有一个专门为工作队列目的构建的开源工作队列系统,而不是比高吞吐量消息队列工作?或者,我应该坚持使用基于数据库模式的解决方案。

非常感谢。

约翰

【问题讨论】:

  • 基于数据库的解决方案似乎最适合您的需求。您指定的要求可以使用简单的 UI 应用程序构建和自定义

标签: architecture queue message-queue priority-queue


【解决方案1】:

您不应该使用排队机制 - 我会使用内存中的项目。请记住,您不想删除某些内容,您可以将它们保存在表中以进行审核等-这不是经典的消息传递,而是更多的工作流状态跟踪。这与排队几乎为零。

【讨论】:

  • 感谢您的帮助,看来我找错树了 :-)
猜你喜欢
  • 1970-01-01
  • 2018-12-20
  • 2021-08-21
  • 2021-01-14
  • 2021-10-16
  • 1970-01-01
  • 1970-01-01
  • 2011-12-18
  • 2012-04-28
相关资源
最近更新 更多