【问题标题】:Microsoft Message Queue Missing MessagesMicrosoft 消息队列缺少消息
【发布时间】:2009-02-10 19:52:17
【问题描述】:

我正在使用 C# 和 .Net Framework 1.1(是的,它很旧,但我继承了这些东西,无法转换)。我将消息放在事务队列上,但大约 50% 的时间它不会进入队列。运行安装了所有服务包的工作组和 Windows/XP Professional。我也没有在死信队列中看到任何消息。

有什么想法可以去哪里看吗?

【问题讨论】:

    标签: msmq


    【解决方案1】:

    如果它根本没有进入队列并且没有进入死信队列,则表明该项目没有被发送到队列。您应该能够通过打开队列的日志来确认是这种情况。

    假设它没有进入队列,这可能是一个事务问题。我会检查您是否每次都将消息提交到队列中。确保没有任何异常被抛出和吞下,导致事务回滚或永远不会被提交(本质上是同一件事)。还要确保没有任何条件语句意味着提交被跳过。

    我会在事务启动、提交和回滚的每个位置以及您创建消息的任何位置周围添加一些日志记录。然后,您可以查看您的日志以查看事件的顺序并了解发生了什么误会。

    另一种选择是删除所有事务代码并针对非事务队列测试代码。如果消息全部出现,那么这是一个事务性问题。如果不是,则问题出在其他地方。

    我经常使用 MSMQ,我从经验中学到的一件事是它工作得非常好,弱点是我 :-)

    【讨论】:

    • 谢谢。我认为提交交易纠正了问题。你不会相信我在这个问题上工作了多久。我的客户在雅加达,我在德克萨斯。需要一些时间来完成测试。
    • 没问题,请帮忙:-)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-07-20
    • 1970-01-01
    • 1970-01-01
    • 2013-08-24
    • 2012-01-21
    • 2020-11-27
    • 1970-01-01
    相关资源
    最近更新 更多