首页 文章

NServiceBus:如果我的用户计算机电源关闭,发布的消息会发生什么?

提问于
浏览
7

使用NServiceBus中的简单Pub / Sub,我知道如果我的订阅者应用程序没有运行,那么已发布的消息将在队列中累积,直到它们可以被处理 . 但是如果整个机器停机,它们会在哪里累积?由于邮件甚至无法传递到我的订阅者队列,是否有一些队列位于发布者身上?我希望能够在订阅者计算机关闭时查看发布者正在等待的消息 .

有什么方法可以看到它们吗?

1 回答

  • 8

    Msmq是NServiceBus的默认传输,它使用存储转发模式来传递消息 . 这意味着当您向另一台计算机发送邮件时,它首先“存储”在发送邮件的计算机上,然后“转发”到收件人计算机 . 这意味着到达无法访问的计算机的传出消息将存储在发送计算机上,直到它们可以传递 . Msmq使用“传出队列”术语来临时存储正在传递的消息 . 如果接收机器关闭,则消息将位于“传出队列”中,直到可以传送 . 如果您查看“消息队列”MMC插件,您将找到一个名为“传出队列”的文件夹,如果订阅者关闭,这将显示您发布的消息 .

    IMO,关于Msmq信息的最佳资源是John Breakwells博客:http://blogs.msdn.com/b/johnbreakwell/archive/tags/msmq/

    有关NServiceBus与Msmq结合的更多信息:

    http://docs.particular.net/nservicebus/msmq/

    希望这可以帮助!

相关问题