12

我一直在研究 Azure 服务总线队列(不是Azure 存储队列)。我读过的所有细节都表明它支持FIFO 语义,但仅在“消息传递会话”的上下文中。问题是我似乎找不到任何关于这在 Azure 上下文中到底是什么的信息。这是 WCF 构造,还是 Azure 服务总线特有的构造?我假设它与本地交易无关,但我不是 100% 确定。

任何指针都会非常有帮助。谢谢!

4

2 回答 2

10

具体来说,它指的是MessageSession,它是AcceptMessageSession方法,它通过仅返回给定会话 id 的消息来保存密钥,这可能是暗示某种排序的序列。Brokered Messaging : Session Messages示例应该有助于澄清,Best Practices文档是另一个很好的参考。

于 2012-08-28T04:48:51.580 回答
1

取自MSDN:

SessionId:如果消息 Microsoft.ServiceBus.Messaging.BrokeredMessage.SessionId设置了属性,则服务总线使用该SessionId属性作为分区键。这样,属于同一会话的所有消息都由同一消息代理处理。这使服务总线能够保证消息排序以及会话状态的一致性。

有关使用的编码示例SessionIdAcceptSessionReceiver 请参阅。

于 2014-12-03T22:03:17.043 回答