我已经阅读了StackOverflow的一些问题。他们说,我们可以为队列启用会话支持,以保留消息FIFO。有人提到不能保证订购。为了确保消息按顺序处理,我们必须在时间戳处理过程中进行手动处理。
是真的吗?
答案 0 :(得分:0)
要以FIFO模式发送/接收消息,需要在队列上启用启用“ Require Sessions”,并使用Message Sessions发送/接收消息。时间戳无所谓。重要的是会话。
SessionId
MessageReceiver
接收任何会话,要么使用较低级别的API(SessionClient
)并指定会话ID来接收特定会话。一个好的开始是阅读documentation并看看这个sample。
答案 1 :(得分:0)
Azure服务总线队列本身遵循FIFO。在某些情况下,消息的处理可能不是顺序的。如果您确定有效载荷的大小是一致的,则可以使用常规队列,该队列将按顺序处理消息(对我有用)。
如果消息之间的有效负载大小将发生变化,则最好使用他的答案中提到的Sean Feldman启用会话的队列。