开发解决方案的Web服务调用缓慢
本文关键字:调用 缓慢 服务 Web 解决方案 开发 | 更新日期: 2023-09-27 18:05:13
好的,我得到了一个使用WSE2的asp.net web服务。它在xp机器上运行。我在win7机器上得到了前端asp.net应用程序。
在生产环境中一切正常。
问题是,当我运行前端的"开发"版本时,web服务调用将永远持续下去。我说的永远,是指永恒。在这里,我们用分钟来计算永恒。
通过"开发"版本,我的意思是我运行绑定到visual studio(2008)解决方案的实例。我使用本地IIS web服务器。
我首先想到的是两台机器之间的网络/防火墙问题。但是如果,从visual studio中,我将网站"发布"到另一个虚拟文件夹,那么一切都很好。
我有http://localhost/MyDevApp和http://localhost/MyPublishedApp
都使用默认的应用程序池。两者都有相同的web.config。据我所知,两个虚拟目录有完全相同的参数。
但是http://localhost/MyDevApp在调用web服务时非常糟糕,并且http://localhost/MyPublishedApp以光速运行。
这样的天气已经三天了
做一些调试,我可以说:
MyWebServiceRequest request = new MyWebServiceRequest ();
request.Url = "http://mywebserviceurl";
request.RequestSoapContext.Tokes.Add (MyUsernameToken);
//All these previous lines executes correctly, rapidly.
//THIS is the slow one.
request.CallWebServiceMethod ();
有谁知道是什么问题吗?
编辑
我还尝试将虚拟目录从我的网站属性更改为不同的东西(例如http://localhost/MydDevApp2),结果相同。
编辑2
可能是由于解绑定的位点在c:'Projets'MySolution'MyDevApp
,而"发布"的位点在c:'inetpub'wwwroot'MyPublishedApp
下。c:'Projets
文件夹被排除在防病毒扫描之外,所以通常应该是更快而不是更慢。
3
编辑我在c:'inetpub'wwwroot'Other中创建了另一个工作区(解决方案在团队服务器源代码控制下),更改了web项目的url,编译并运行:没问题。因此,看起来确实是文件所在的物理路径导致了这个问题,而绑定到解决方案的事实并不是。
编辑4(八月十九日)
看来没什么可做的了。从我上次更新到现在已经有10天了,现在新工作区的网站也开始变慢了。所以我把工作空间移到磁盘上,现在在c:'inetpub'wwwroot'Other2中,你知道吗?又运行正常了。也许10天后我将不得不再次移动它。
编辑5
我将我的问题标记为移动到serverfault,最后它与编程无关,正如我首先想到的。
如果没有看到你的机器在配置中很难说,但通常这意味着你的dns服务器或主机文件有某种问题,导致解决服务的过程很慢。
另外,如果您使用的是代理服务器,请确保您对调用该服务的任何url都绕过它。
最后,似乎wse2跟踪在:
<microsoft.web.services2>
<diagnostics>
<trace enabled="true" input="InputTrace.log" output="OutputTrace.log" />
</diagnostics>
<policy>
<cache name="policyCache.config" />
</policy>
</microsoft.web.services2>
当日志文件越来越大的时候,它的速度越来越慢…只需禁用跟踪即可解决问题。