【发布时间】:2016-12-12 17:32:42
【问题描述】:
我想创建一个队列来接收带有一些标识符的多条消息。我想异步处理这个队列,但有一个条件,如果消费者正在处理标识符为 x 的消息,则不能将具有相同标识符的其他消息发布给其他消费者。一旦消费者处理完该消息,它就会报告回来,并且可以再次发布具有该标识符的消息。
队列基本上会分支到多个通道,每个通道代表一个标识符,这些通道中的消息将按到达时间排序,通道中的每条消息将同步处理,但队列中的通道异步处理。
这可能吗?
【问题讨论】:
我想创建一个队列来接收带有一些标识符的多条消息。我想异步处理这个队列,但有一个条件,如果消费者正在处理标识符为 x 的消息,则不能将具有相同标识符的其他消息发布给其他消费者。一旦消费者处理完该消息,它就会报告回来,并且可以再次发布具有该标识符的消息。
队列基本上会分支到多个通道,每个通道代表一个标识符,这些通道中的消息将按到达时间排序,通道中的每条消息将同步处理,但队列中的通道异步处理。
这可能吗?
【问题讨论】:
这可能吗?
不是直接在 RabbitMQ 中,不是。
我的一个系统中有类似的要求,并在我的代码中为消息生产者处理了这一切。
【讨论】: