2012-01-05 102 views
4

我正在使用由多個解決方案構建的應用程序。TFS構建服務器比本地機器需要更多時間構建

當我在我的本地機器上構建它們時,大約需要6分鐘。 但是,在TFS構建服務器上構建它時(它是運行Windows Server 2003 R2的虛擬機)和TFS代理2010,它最多需要40分鐘。

我正在使用非增量構建(並且知道它需要更多時間..),並且get-source部分僅需要大約2分鐘。

我不明白爲什麼它可能需要這麼長的時間與本地構建相比。在本地計算機上建立約1.5分鐘的解決方案需要大約9分鐘的時間。

任何想法/提示/建議爲什麼發生這種情況/如何解決這個問題?

UPDATE

我試圖用一個並行構建(使用/ M:4),但它失敗了,我可能有一些定義錯誤的依賴或東西(我會檢查後上..)。

VM構建服務器是四核4G RAM。

我已經在該服務器上直接使用了MSBuild,當代理正在運行完整構建時需要7.5-9.5分鐘的解決方案只花了2.5分鐘。 TFS構建代理可以解釋這個問題嗎? (我真的不明白這個......)

感謝未來,年輕的程序員。

+0

請在「打造所有的人都在我的本地機器上的」細說:這是否意味着你'是否已將您的工作站用作TFS構建代理,或者您只是在VS中編譯解決方案? – pantelif 2012-01-05 12:14:24

回答

4

您可以設置爲「診斷」(它在隊列中累積的參數選項卡)

一旦這個「日誌記錄級別」排隊一個新的版本,使用一個代理運行後,打開Build,然後點擊'查看日誌'。在將要填充的長列表中,每個部分在右側將具有「持續時間」指示。

我會研究這個日誌來找出你的延遲來自哪裏。

+0

謝謝,我之前完成了這個工作,我正在翻閱日誌。正如我在我的問題中所說的,我已經看到在我的機器上建立1.5分鐘的解決方案需要9分鐘(當Logging設置爲Diagnostic時,我已經看到了這個) – user1131689 2012-01-05 11:49:45

+3

如果所有延遲都具有這種性質,似乎指向您的工作站的硬件優勢vs.你的構建服務器。 – pantelif 2012-01-05 12:12:48

0
  1. 嘗試查看性能概要獲得它爲什麼採取這麼多的時間 - MSBuild的myproject.csproj/noconsolelogger /l:ConsoleLogger,Microsoft.Build.Engine.dll;performancesummary
  2. 檢查並行構建構建服務器
  3. 上啓用檢查虛擬機的硬件足以媲美本地計算機
  4. 檢查您是否已經禁用殺毒在構建不檢查病毒 目錄
  5. 檢查您的性能管理器爲什麼它花的時間過長,哪些進程在生成過程中同時運行...
+0

謝謝,請參閱更新。 – user1131689 2012-01-09 10:19:12