2

好的,我得到了一个使用 WSE2 的 asp.net Web 服务。它在 xp 机器上运行。我在我的 win7 机器上安装了前端 asp.net 应用程序。

两者都在框架 3.5 中。

在生产环境中一切都很好。

问题是,当我运行前端的“开发”版本时,Web 服务调用需要很长时间。永远,我的意思是永恒。在这里,我们以分钟计算永恒。

通过“开发”版本,我的意思是我运行绑定到视觉工作室(2008)解决方案的实例。我使用本地 IIS Web 服务器。

我的第一个想法是我的两台机器之间的网络/防火墙问题。但是,如果,从视觉工作室,我将网站“发布”到另一个虚拟文件夹,那么一切都很好。

所以我有http://localhost/MyDevApphttp://localhost/MyPublishedApp

两者都使用默认应用程序池。两者都有相同的 web.config。据我所知,两个虚拟目录都具有完全相同的参数。

但是http://localhost/MyDevApp在调用web服务的时候就很厉害了,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),结果相同。

编辑 2

也许它可能是原因,绑定到解决方案的站点驻留在c:\Projets\MySolution\MyDevApp“已发布”站点位于c:\inetpub\wwwroot\MyPublishedApp. 该c:\Projets文件夹被排除在防病毒扫描之外,因此通常它应该更快而不是更慢

编辑 3

我在 c:\inetpub\wwwroot\Other 中创建了另一个工作区(解决方案在团队服务器源代码管理下),更改了 Web 项目的 url,编译并运行:没问题。因此,文件所在的物理路径似乎确实导致了这种情况,而与解决方案绑定的事实并非如此。

编辑 4(8 月 19 日)

好吧,似乎没有什么可做的。自上次更新以来已经过去了大约 10 天,现在新工作区下的站点也开始变慢。所以我移动了磁盘上的工作区,现在在 c:\inetpub\wwwroot\Other2,你知道吗?那又运行良好了。也许我将不得不在大约 10 天内再次移动它。

编辑 5

我将我的问题标记为转移到 serverfault,最后它与编程无关,正如我最初认为的那样。

4

2 回答 2

0

很难说没有在配置中看到您的机器,但通常这意味着您的 dns 服务器或主机文件存在某种问题,导致解决服务的过程很慢。

此外,如果您使用的是代理服务器,请确保为调用该服务的任何 url 绕过它。

于 2011-08-10T16:32:51.770 回答
0

最后,似乎 wse2 跟踪 where on :

  <microsoft.web.services2>
    <diagnostics>
      <trace enabled="true" input="InputTrace.log" output="OutputTrace.log" />
    </diagnostics>
    <policy>
      <cache name="policyCache.config" />
    </policy>
  </microsoft.web.services2>

虽然日志文件越来越多,但它会变慢和变慢......只需禁用跟踪即可解决问题。

于 2011-09-08T16:35:14.507 回答