【发布时间】:2015-11-13 12:15:37
【问题描述】:
我们需要一种确定性/一致的方式来了解特定队列(本地/远程)是否已备份(即无法再接收消息),然后再向其发送另一条消息。到目前为止,我看到的最佳解决方案是获取给定队列上的消息计数(以有效的方式),然后确定是否发送消息。
除了捕获异常 X 或 Y 并重试之外,这里的最佳做法是什么?谢谢
【问题讨论】:
标签: c# error-handling queue msmq
我们需要一种确定性/一致的方式来了解特定队列(本地/远程)是否已备份(即无法再接收消息),然后再向其发送另一条消息。到目前为止,我看到的最佳解决方案是获取给定队列上的消息计数(以有效的方式),然后确定是否发送消息。
除了捕获异常 X 或 Y 并重试之外,这里的最佳做法是什么?谢谢
【问题讨论】:
标签: c# error-handling queue msmq
如果队列已达到其配额大小,则新消息将被拒绝。您需要监控队列的总消息大小,而不是总消息数。 MSMQ 不使用消息数来确定是否达到配额。
或者,如果您使用死信队列,您将能够看到一条被拒绝的消息,其状态表明目标队列已达到配额。我认为这种方法比远程检查队列统计信息更有效。
【讨论】: