0

我正在尝试使用 rabbitMQ 设置任务队列,并与 Node.js 和 React.js 耦合。我无法理解任务管理的实际工作原理,而且我在网上找不到一个很好的例子。

我正在尝试发送一个任务(例如在用户单击时生成大量图像)并将其发送到队列,这样它就不会阻止用户导航。任何人都可以尝试指导我完成整个过程吗?

我的 rabbitMQ 服务器启动并运行,并且能够发送/接收消息。我只是无法将其转换为任务管理工具(例如发送/接收与任务相关的数据)。欢迎任何帮助/示例!

4

1 回答 1

2

这是一个关于 The Grid 如何“在 RabbitMQ 中使用工作队列(任务队列)处理资源密集型任务”的示例;The Grid 中的所有计算密集型工作(例如图像分析和图像处理)在 RabbitMQ 中作为任务/作业卸载。无需让 Web 服务器立即等待结果,而是可以自由地继续处理其他请求。RabbitMQ 任务队列还用于在多个工作人员之间分配耗时的任务,使用任务队列(对他们而言)背后的主要思想是避免立即执行资源密集型任务并且必须等待它完成。也可以安排任务稍后完成。

另一个例子是CloudAMQP 背后的架构。它建立在多个小型微服务之上,其中 RabbitMQ 用作消息传递系统。RabbitMQ 负责将事件/任务分发给监听它们的服务——您可以选择发送消息而不必知道另一个服务是否能够立即处理它。任务可以简单地在队列中等待,直到负责的服务准备好。

于 2017-07-24T08:27:17.650 回答