2013-06-21 38 views
1

当使用服务总线队列中的Brokered Messaging时,我明白云队列本身是持久的。它是否也影响客户端?Azure服务总线队列客户端耐久性

例如,当我将消息发送到队列时,我应该手动处理由于连接丢失限制问题而导致事务被拒绝的情况,还是会自动保留在客户端某处并稍后重新发送?

回答

2

服务总线QueueClient对象或库中没有“自动”缓存或存储消息。如果QueueClient.Send(message)的呼叫成功没有例外,则保证该消息被持久存储。如果引发异常,则表示失败(由于连接/节流等原因)。如果你想让你的客户端对连接丢失等有弹性,你可以考虑使用一个像MSMQ这样的本地队列来防止消息发送失败。我们有一个示例显示如何在MSMQ和服务总线队列之间传输消息: http://code.msdn.microsoft.com/windowsazure/Brokered-Messaging-MSMQ-a31c6644