【发布时间】:2013-04-18 14:42:27
【问题描述】:
我正在从我的 .net winforms 应用程序中调用 .net webservice,两者都在框架 4.0 中。在程序执行期间,webservice 第一次调用方法时,调用大约需要 10-12 秒。随后的调用大约需要 1-2 秒。后续调用,即使重新创建了 Web 引用实例,仍然需要大约 1-2 秒。 winforms应用重启后,第一次调用延迟再次出现,但后续调用有响应。
网络引用的实例是在调用发生之前创建的,不是延迟的一部分。
正在生成 winforms 应用程序的 XmlSerializers(据我所知并已使用,但我不确定如何验证这一点)。
由于 web 服务端的首次运行编译,没有发生延迟。这是一个全天都在使用的生产网络服务,它的应用程序池保留在内存中。据我所知,延迟发生在客户端或客户端和服务器之间的第一次调用,但不是后续调用。
不确定接下来要检查什么。有什么想法吗?
【问题讨论】:
-
请记住,第一次调用会比较慢,但是,它不应该那么慢。
-
我怀疑答案可能在这个问题/答案组合中的某个地方:stackoverflow.com/questions/6988981/webclient-is-very-slow 特别是,我正在研究代理问题。
-
在故障机器的 Internet 选项中,您的代理是否有“自动检测设置”?
-
@tkcsam:是的,我预计会有少量延迟,但肯定不是我所看到的。
-
@spender:我去看看。
标签: c# vb.net web-services .net-4.0 asmx