【问题标题】:WCF IIS lifecycle, "ResponseTimeLeak"WCF IIS 生命周期,“ResponseTimeLeak”
【发布时间】:2017-07-20 13:10:56
【问题描述】:

我在 IIS 上安装了一个 WCFService,它以一种非常奇怪的方式工作。

如果我在本地机器 (W10-IntelI7-8CPU-16GbRAM) 上执行该服务,它的工作速度很快,响应时间约为 200-300 毫秒(在激活日志的调试中),但是当我将它安装在 TestServer 上时(W12在虚拟机上,4CPU-8GbRAM)它工作得非常糟糕,客户端上的响应大约是 2s。

所以我已经开始跟踪,我的服务器代码(WCF 服务实现)的运行时间大约是 10-20 毫秒,因此临时代码的执行非常快。所以问题一定出在 WCF 上,但如果我激活 WCF tracing,跟踪显示的代码与我的代码相同:

  • 在 messages.svclog 上:请求和响应之间的 15 毫秒
  • 在 trace.svclog 上:3 个活动在 15 毫秒内执行

但是如果我查看 IIS 日志,耗时字段是 2046 毫秒。

那么,任何人都知道服务器上多出来的 2 秒会去哪里?知道如何在服务器上跟踪此时间泄漏吗?

【问题讨论】:

  • 在 TestServer 上运行时,只有第一个请求很慢还是全部都是?
  • 第一个因为启动比较慢。我正在跟踪以下请求。

标签: c# wcf iis


【解决方案1】:

最后,我找到了错误,这是我的错:它是对 global.asax 上的一个 url (localhost) 的调用,它配置错误,并且持续了 2 秒以错误地响应。脚上中了一枪!

我已经修复了它,配置了正确的 url,在配置错误时记录错误,并避免在每次请求时调用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多