【发布时间】:2014-02-21 10:15:31
【问题描述】:
我的 rabbitMQ 实现中似乎存在设计问题。
我有一个消费者侦听队列以执行需要完成多个子任务的工作。 作业完全完成后,我需要向通知队列发布一条消息,说明作业已完成。
我当前的 WIP 倾向于让 Job worker 监听他的队列并将 RPC 消息发布给专门的 worker。 我希望他在所有人都完成之前收听 RPC 响应,然后才能发布回通知队列。
这个实现的问题是我需要同时监听作业队列(接收传入的作业)和 RPC 队列(以便接收来自每个专业工作者的回复)。
显然这不能通过两个队列上的consume()方法来实现。
我的设计有缺陷吗? (我想是的)我怎样才能以“好的设计”的方式实现它?
谢谢
【问题讨论】:
-
我实际上想过使用 getMessage() 方法从作业队列中提取传入消息并从回复队列中提取消息,但这看起来真的很糟糕。