javascript - RabbitMQ 中的任务排队

标签 javascript rabbitmq amqp node-amqp

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

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

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

最佳答案

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

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

关于javascript - RabbitMQ 中的任务排队,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45274988/

相关文章:

javascript - 将新函数插入数组 - Javascript

javascript - 如何在 jQuery 中删除异常的类

redis - 在 Kubernetes 上运行 Kafka 是一种好方法吗?

ruby-on-rails - 如何在Rails中使用RabbitMQ实现RPC?

python - 使用 celery 使用 AMQP 中的 json 数据

javascript - Mathjax 在模式中打开时自动换行

javascript - 我想创建一个函数,将时刻的小时数与一组 div 类进行比较(编码新手,如果措辞不正确,抱歉)

python - Pika:消费下一条消息,即使上一条消息未被确认

ruby - 使用 EventMachine 和 RabbitMQ 的 RPC

javascript - 如何使用 amqplib 库中的 channel.assertQueue 函数用于 node.JS?