我有一个名为myPrivateTransactionalQueue的事务队列,该事务队列托管在一个名为myReceivingServer的Win2008R2服务器上,该服务器应该从另一个名为mySendingServer的服务器上接收消息.当mySendingServer发送消息时,mySendingServer上的MSMQ日志中会出现一个条目,内容为:
Message with ID {f748cc48-8017-4a64-9ff6-61c68564445f}\56008 was sent to queue DIRECT=OS:<myReceivingServerName >\private$\<myPrivateTransactionalQueue>但是,myReceivingServer在MSMQ日志中只有一个条目:
Message came over network但是,该消息未传递到myReceivingServer上的myPrivateTransactionalQueue.到目前为止,我看过的东西:
我在这里有点头脑,因为我根本无法解释该消息.任何帮助将不胜感激.
我发现此链接 blogs.msdn/b/johnbreakwell/archive/2010/01/22/why-does-msmq-keep-losing-my-messages.aspx 这样我将看看这是否能解释我的问题.将以任何分辨率回发.
Edit2:好的,我讨厌这个问题,但是问题本身已经解决了.在上述配置中,我没有进行任何更改.但是我现在可以正常工作了.
Edit3:这是John Breakwell的评论:为了确保您再次看到此问题时知道根本原因(并且没有理由认为它已经永久消失),您需要启用一些选项,例如negative如我的博客中所述的源日志.现在您知道您的系统没有弹性,现在是修复它的好时机
解决方案好吧,我遇到了完全相同的问题,由于两个原因,它要么自行解决.我更新了我发送的消息中引用的计算机名称(以前它是主机中的别名),或者可能是事实,我对接收服务器上的所有人/匿名用户启用了完全控制权,并重新启动了计算机.
I have a transactional queue called myPrivateTransactionalQueue hosted on a Win2008R2 server called myReceivingServer which should receive messages from another server called mySendingServer. When the mySendingServer sends a message, an entry appears in the MSMQ log on mySendingServer which says:
Message with ID {f748cc48-8017-4a64-9ff6-61c68564445f}\56008 was sent to queue DIRECT=OS:<myReceivingServerName >\private$\<myPrivateTransactionalQueue>However, myReceivingServer, in the MSMQ log there is a single entry:
Message came over networkHowever the message is not being delivered to myPrivateTransactionalQueue on myReceivingServer. Things I have looked at so far:
I am going a bit mental here because I cannot account for the message at all. Any help would be much appreciated.
Edit: I found this link blogs.msdn/b/johnbreakwell/archive/2010/01/22/why-does-msmq-keep-losing-my-messages.aspx so I will see if this explains my problem. Will post back with any resolution.
Edit2: OK I hate this but the problem just kind of sorted itself out. I didn't change anything in the above configuration. But I now have it working.
Edit3: This is a comment from John Breakwell: To ensure you know the root cause when you see this problem again (and there's no reason to believe it has gone for good), you need to enable some options, such as negative source journaling as mentioned in my blog. Now you know your system isn't resilient, it's a good time to fix it
解决方案Ok I had exactly the same problem and it either resolved itself because of two reasons. I updated the computer name referenced in the message I was sending (previously it was an alias in my hosts) or it could have just been the fact that I enabled full control to everyone/anonymous on the receiving server and rebooted the machine.
更多推荐
已收到但未交付Windows 2008 R2的MSMQ消息
发布评论