1

Quartz 和 RabbitMQ,这些技术的区别是什么?它们可以一起使用吗?这些技术可以安装在托管 Web 服务器的硬件上,还是为它们配备专用硬件更好?

4

1 回答 1

9

我们首先假设您指的是Quartz,一个调度程序,而不是Quartz,一个 Mac OS X 图形层。;)

  • RabbitMQ是一个消息队列。消息队列确保消息到达目的地,在停机期间持续存在并在多个工作进程之间进行负载平衡。如果您有多个进程在执行不同类型的工作并且您需要一种分配工作负载的方法,那么您通常需要一个消息队列。
  • Quartz 是一个调度器。调度程序确保事件在正确的时间发生,可能确保一个事件在另一个事件开始之前正确执行,或者在停机后赶上时间表。如果 crontab 等基本操作系统功能不足以满足您的需求,您通常需要一个调度程序。

结合这两个概念可以很强大:让调度程序触发事件或事件链进入消息队列,并让许多工作人员在各自的队列上监听以执行分配的任务。

根据您想要实现的目标,将所有东西都放在同一台机器上可能是完全可以的。当您遇到性能不佳时,您可以决定是想要更大的机器还是将工作负载分配到许多较小的机器上。

您可能想查看 RabbitMQ 和 Quartz 网站上的教程,看看其中一个或两个是否适合您的目的。

于 2012-09-10T09:16:36.877 回答