2012-08-28 121 views
9

我一直在关注Azure服务总线队列(不是 Azure存储队列)。我读过的所有细节都表明它支持FIFO semantics,但仅限于“消息传递会话”的环境中。问题是,我似乎无法找到有关Azure背景下的具体信息。这是一个WCF构造,还是Azure Service Bus特有的?我认为它不涉及本地交易,但我不是100%确定的。Azure服务总线和消息会话

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

回答

9

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

+0

吉姆编码样本 - 感谢您的回答。如果我明白,会话ID可以用来排序消息,但框架中没有提供这些会话ID。这意味着您必须生成用于FIFO的会话ID的序列号。它是否正确? –

+0

是的,这是我的阅读以及...我希望找到一个具体的FIFO使用示例,但我提到的示例是最接近的。 –

+0

谢谢吉姆。如果我把它放在一起,值得发布,我会在这里添加它。 –

1

MSDN:

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

对于采用SessionIdAcceptSessionReceiversee.

相关问题