【问题标题】:Lifetime of messages in a message queue消息队列中消息的生命周期
【发布时间】:2010-10-09 01:51:09
【问题描述】:

如何控制消息队列中消息的生命周期?默认生命周期是多少?我尝试在本地运行消息队列,但发现消息在系统重新启动时消失了。这不会破坏消息队列在构建松散耦合应用程序中的目的。这是否意味着当消息发送到另一台机器进行处理时,第二天将无法使用它。非常感谢这里的一些指导,因为我不清楚消息队列系统的这些方面。

【问题讨论】:

    标签: msmq


    【解决方案1】:

    有两种非事务性消息。有快速消息和可恢复消息。快速消息将在服务器(或我认为的 msmq 服务)重新启动时消失。 express 消息是 .net api 和 com api 中的默认类型。要使消息持久化,您必须将 Recoverable 属性设置为 true。 Here is the plumber explanation.

    还有其他属性可以控制消息的生命周期。但他们的默认设置是永远。

    还请记住,这些是消息属性,而不是队列属性。

    【讨论】:

      【解决方案2】:

      您将 TimeToBeReceived 属性设置为什么?

      消息队列存储在磁盘上,因此除非它们已过期,否则重启不应删除它们。

      另外请注意,如果您将消息发送到不存在的队列,它将被丢弃 - 请确保在使用之前设置队列。

      -亚当

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-05-28
        • 2023-03-28
        • 1970-01-01
        • 2021-06-20
        • 1970-01-01
        • 1970-01-01
        • 2016-08-21
        • 2012-01-21
        相关资源
        最近更新 更多