2011-05-04 54 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来查看缓慢情况下的网络流量。看看性能问题在哪里。

相关问题