2010-04-06 70 views
3

我看到一個非常奇怪的錯誤,我在困難時間 跟蹤下。我認爲它與我的犀牛ESB的配置有關,但如果RSB實際上導致它,我不確定 ,所以我想我會問,看看其他任何人在MSMQ的任何其他用法中是否遇到過這種情況。重新啓動後MSMQ不一致狀態

我使用RSB作爲Web應用程序(ASP.NET,客戶端在後臺運行)中的客戶端。客戶端通過RSB的MSMQ綁定與Windows服務通話。重新啓動服務似乎對MSMQ沒有影響,也沒有手動重新啓動IIS。但是,每當我真的重新啓動計算機時,MSMQ總是拒絕啓動備份,聲稱「隊列處於不一致的狀態」。嘗試手動啓動MSMQ會導致相同的錯誤,從而導致MSMQ安裝無效。解決它的唯一方法是實際刪除然後重新安裝MSMQ。

我通過全能Google發現的唯一信息是對MSMQ 2.0中的問題的引用(此問題發生在MSMQ 4.0中)。我已經驗證過,在停車時,在服務和網站上都會調用Dispose。

有沒有人有任何想法,爲什麼這可能會發生?謝謝!

回答

0

我的團隊遇到類似的問題,MSMQ被NSB 2.5調用。基礎架構將我們的虛擬機遷移到另一臺物理服務器並出於某種原因降低了可用內存後,問題最近出現我們認爲這個問題可能與記憶有關。

編輯 與此沒有更多的問題,一個星期後,我可以自信地說,在服務器上提高RAM解決了我們MSMQ的「狀態不一致」的問題。請注意,我們必須首先重新安裝MSMQ--但問題再也沒有回來,並且在內存更新之前每隔兩天就會彈出一個問題。

4

我在Window 2008 Server(虛擬機)上遇到同樣的問題。儘管環境與犀牛工具無關。

事件日誌中的錯誤: 「消息隊列服務無法啓動,因爲隊列處於不一致狀態。有關詳細信息,請參閱support.microsoft.com上的Microsoft知識庫文章827493。正如Roy指出的那樣,這種情況每2-3天就會發生一次。每次我們按照下面的步驟恢復 - 而是重新安裝MSMQ。

1)停止所有使用MSMQ的應用程序和服務。
2)殺死從任務管理器
3 mqsvc.exe)進入C:\ WINDOWS \ SYSTEM32 \ MSMQ \存儲和刪除任何文件.mq
4)啓動MSMQ服務
4)啓動應用程序

0

定期在Windows 2008RC2上,重啓後MSMQ無法啓動。

對我來說,兩個經常的問題是:

「消息隊列服務無法啓動,因爲隊列是不一致的狀態」 和 「的依存服務不存在或已被標記爲刪除」

有時,下面的幫助(雖然我們正在尋求一個更堅實的答案)

  1. 重命名MSMQ文件夾msmq_old
  2. 淨停止WUAUSERV
  3. 淨停止位
  4. 刪除「%WINDIR%\ softwaredistribution」目錄
  5. 重啓

這發生在今年5次,每一次,多種以上的有大量的重新啓動。

有時,我們將恢復爲刪除功能/添加功能,但您可能會陷入循環。啓動時,Windows Update服務會發生回滾,因此功能永遠不會被卸載,問題也不會被修復。

按照上面的步驟可以幫助。

1

在我的方案中,MSMQ服務重新啓動後,我已經能夠修復「隊列處於不一致狀態」錯誤。 原因是計算機名稱太長,因此將計算機名稱更改爲少於15個字符的名稱可解決問題。

相關問題