【问题标题】:Implementing a job queue with rabbitmq用rabbitmq实现一个作业队列
【发布时间】:2015-07-06 08:24:30
【问题描述】:

我已经构建了一个 rabbitmq 包装器,它可以向消费者发布消息,并且运行良好。

我是否也可以在 rabbitmq 中构建一个工作队列(如 gearman),它可以将长时间运行的任务分发给消费者,消费者反过来将结果通知发布者。

我想这将要求发布者也充当消费者,我不确定如何实施。 (如果我错了,请纠正我)。

或者,rabbitmq 不是这种情况的工具。

谢谢,

【问题讨论】:

  • 这可能有点矫枉过正,但Kafka 非常擅长做你所描述的事情。

标签: php rabbitmq job-queue


【解决方案1】:

RabbitMQ 支持这种类型的模式。查看RPC tutorial 了解如何实现此模式的引导程序。

它可以根据您的需要以不同的方式实现:

  • direct reply queue,队列将被创建并仅用于与请求关联的回复
  • 包含所有回复的静态回复队列

它通常意味着将请求与回复关联起来的关联 ID,或者如果回复包含所有必要信息,则它可以是无状态的。

这真的取决于你的需要。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-18
    • 2021-09-16
    • 2015-01-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多