我們遇到的問題是消息寫入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