我们遇到的问题是消息写入MSMQ的速度很慢。我们的队列在Windows Server 2008 SP2上。队列是一个公共队列,在“servername \ queuename”处寻址。MSMQ写入时间大于1分钟
的代码将消息发送到队列是
MessageQueue queue = new MessageQueue(Settings.Default.DefaultDestinationQueue);
queue.Formatter = new BinaryMessageFormatter();
queue.Send(message);
,我们正在尝试发送的消息只是一个“PublishMessage”,具体如下:
[Serializable]
public class PublishMessage {
public int EntryId {get; set; }
}
我们看到消息实际上到达队列,但是前后记录显示每条消息通常超过1分钟。
目前,我们看不到我们的队列配置有什么问题,但不是排队专家 - 这是此应用程序的第一个补充。有人有主意吗?
编辑:我们的服务器运行SP 2(不是我原来说的SP1)。在托管队列的计算机上直接运行实例的速度很快,其他任何都不是。
注: Crossposted这在https://serverfault.com/questions/272242/msmq-write-taking-1-minute
感谢您的快速repsonse - 答案:1)队列不是交易,2)分配的空间是'无限'。根本没有任何磁盘排队,3)系统队列是空的。此外,我们在SP2上,而不是1,我的错误。 – reallyJim 2011-05-21 16:53:30
“看起来没有任何磁盘队列” 这些文件位于system32 \ msmq \ storage目录中。 – 2011-05-22 23:09:49