好的,我使用WSE2获得了一个asp.net Web服务。它在xp机器上运行。 我在win7机器上获得了前端asp.net应用程序。
在Framework 3.5中。
在生产环境中,一切都很好。
问题是,当我运行前端的“developpement”版本时,Web服务调用需要永远。永远,我的意思是永恒。在这里,我们在几分钟内计算永恒。
通过“developpement”版本,我的意思是我运行绑定到visual studion(2008)解决方案的实例。我使用本地IIS Web服务器。
我的第一个想法是我的两台机器之间的网络/防火墙问题。但是,如果,从视觉工作室,我将网站“发布”到另一个虚拟文件夹,那么就可以正常工作。
所以我有http://localhost/MyDevApp和http://localhost/MyPublishedApp。
两者都使用默认的应用程序池。两者都有相同的web.config。据我所知,两个虚拟目录都有完全相同的参数。
但http://localhost/MyDevApp在调用网络服务时非常糟糕,http://localhost/MyPublishedApp以光速运行。
现在就是3天了。
做一些调试我可以这么说:
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),结果相同。
也许它可能是原因,绑定到解决方案的网站位于c:\Projets\MySolution\MyDevApp
,而“已发布”的网站位于c:\inetpub\wwwroot\MyPublishedApp
之下。 c:\Projets
文件夹从防病毒扫描中排除,因此通常应该更快而不是更慢。
我在c:\ inetpub \ wwwroot \ Other中创建了另一个工作区(解决方案在团队服务器源代码控制下),更改了web项目的url,编译并运行:没问题。所以看起来文件所在的物理路径似乎正是由此导致的,而与解决方案绑定的事实并非如此。
我将我的问题标记为迁移到serverfault,最后它与编程没有任何关系,正如我首先想到的那样。
答案 0 :(得分:0)
很难说没有在配置中看到您的计算机,但通常意味着您的dns服务器或主机文件存在某种问题导致进程缓慢解析服务。
此外,如果您使用的是代理服务器,请确保绕过任何调用该服务的网址。
答案 1 :(得分:0)
最后,看来wse2跟踪在哪里:
<microsoft.web.services2>
<diagnostics>
<trace enabled="true" input="InputTrace.log" output="OutputTrace.log" />
</diagnostics>
<policy>
<cache name="policyCache.config" />
</policy>
</microsoft.web.services2>
当日志文件越来越多时,它会慢下来......只是禁用跟踪可以解决问题。