2011-05-04 89 views
0

我正試圖幫助這裏的同事。我們使用相同的代碼庫,但是我運行的是Win7 Ultimate和她的Windows Server 2008.當我使用Stopwatch類調用Web服務時,它使用320ms的調用,當她使用相同的有效負載進行完全相同的調用時...它需要約3500毫秒。任何想法爲什麼這會發生?此代碼運行一個XQuery對XML數據庫...如何提高從Windows 2008 Server調用Web服務的性能?

using (MarkLogicHttpReader reader = (MarkLogicHttpReader)cmd.ExecuteHttpReader()) 
{ 
     var watch = Stopwatch.StartNew(); 
     response.Xml.Value = reader.GetXml(); 
     watch.Stop(); 
     Debug.WriteLine("The call took : {0} ms", watch.Elapsed.TotalMilliseconds); 
     response.Xml.HasData = HasData(response.Xml.Value); 
    } 

任何想法如何,我也許可以調整自己的網絡設置或東西讓我得到了相同的吞吐量。她是一個很好的朋友,如果可以的話,我想幫助她。我在想也許這是關於數據包大小或什麼的?無論如何,任何想法或提示肯定是讚賞。我知道這是一個編程論壇,也許這是一個網絡問題,但老實說,我們都是開發人員運行相同的代碼。我只是好奇她爲什麼在她的機器上慢得多。

回答

0

我會做幾件事情。

首先,我會嘗試測量ExecuteHttpReader調用所需的時間。看看你和你的同事之間的差異會很有趣。

其次,我會看看網絡方面。特別是,您和服務之間是否有互聯網代理?代理服務器可以在臺式機和服務器機器之間進行不同的配置。

最後,是的,使用Fiddler來查看緩慢情況下的網絡流量。看看性能問題在哪裏。

相關問題