我想定义一个队列,以便将所有进入它的消息路由到不同的工作人员,同时与其中一名工作人员共享我想一张图可以更好地解释
W(i) - 接收不同消息的 Worker
W(sp) - 是接收所有消息的特殊工作者
Q - 队列
'----------------------------------------Q---------- ----------------
|--------------------------- |---------- -------- |
|--------------------------- |---------- -------- |
W1,W(sp)----------W2,W(sp)-----------W3,W(sp)
如您所见,W1、W2、W3、W4 都是不同的工作人员,每个工作人员都像普通工作人员一样接收不同的消息。每个人都会从队列中收到一份工作
然而,每个消息都应该像交换 W(sp) 一样共享。我怎样才能实现它。是否有一些我可以设置的参数,以便 W(sp) 始终可以接收队列中的所有事件
如果你能帮忙就太好了
编辑 1
我发现理解这个问题有点棘手,这是另一个版本
我想以循环方式共享队列中的作业,以便一个作业只给一个消费者一次,因为我想对作业进行并行处理,同时我想要一个特殊的消费者,它也将从队列中获取所有作业.
例如:
消费者 - C1,C2,C3,C4
特殊消费者 - Csp
队列-Q
Q 中的每个作业都应广播到 C1,C2,C3,C4 之一并与 Csp 共享。因此,来自 Q 的作业在 Csp 和 C(i) 之一之间共享。有了这个,我将能够并行处理 C1、C2、C3、C4 等中的作业,同时使用我的消费者 Csp 验证 Q 中的每个作业