Asp.net Web服务似乎在响应前超时1分钟
因此,我有一个.NET web服务正在运行,当我在本地调试并在我的机器上运行该服务时,请求需要~4s的时间。然而,当我将项目推送到我的web服务器时,完全相同的请求现在需要大约1m的时间。我觉得这个请求只需要~5秒。我不确定我做错了什么 以下是我的fiddler结果: 服务器性能:Asp.net Web服务似乎在响应前超时1分钟,asp.net,.net,vb.net,web-services,iis,Asp.net,.net,Vb.net,Web Services,Iis,因此,我有一个.NET web服务正在运行,当我在本地调试并在我的机器上运行该服务时,请求需要~4s的时间。然而,当我将项目推送到我的web服务器时,完全相同的请求现在需要大约1m的时间。我觉得这个请求只需要~5秒。我不确定我做错了什么 以下是我的fiddler结果: 服务器性能: ACTUAL PERFORMANCE -------------- ClientConnected: 11:21:33.443 ClientBeginRequest: 11:21:42
ACTUAL PERFORMANCE
--------------
ClientConnected: 11:21:33.443
ClientBeginRequest: 11:21:42.412
ClientDoneRequest: 11:21:42.412
Gateway Determination: 0ms
DNS Lookup: 0ms
TCP/IP Connect: 0ms
HTTPS Handshake: 0ms
ServerConnected: 11:21:13.506
FiddlerBeginRequest: 11:21:42.412
ServerGotRequest: 11:21:42.412
ServerBeginResponse: 11:22:47.085
ServerDoneResponse: 11:22:47.101
ClientBeginResponse: 11:22:47.101
ClientDoneResponse: 11:22:47.101
ACTUAL PERFORMANCE
--------------
ClientConnected: 11:35:50.111
ClientBeginRequest: 11:35:59.533
ClientDoneRequest: 11:35:59.533
Gateway Determination: 0ms
DNS Lookup: 0ms
TCP/IP Connect: 0ms
HTTPS Handshake: 0ms
ServerConnected: 11:35:48.845
FiddlerBeginRequest: 11:35:59.533
ServerGotRequest: 11:35:59.533
ServerBeginResponse: 11:36:03.283
ServerDoneResponse: 11:36:03.298
ClientBeginResponse: 11:36:03.298
ClientDoneResponse: 11:36:03.298
~1m05s
本地表现:
ACTUAL PERFORMANCE
--------------
ClientConnected: 11:21:33.443
ClientBeginRequest: 11:21:42.412
ClientDoneRequest: 11:21:42.412
Gateway Determination: 0ms
DNS Lookup: 0ms
TCP/IP Connect: 0ms
HTTPS Handshake: 0ms
ServerConnected: 11:21:13.506
FiddlerBeginRequest: 11:21:42.412
ServerGotRequest: 11:21:42.412
ServerBeginResponse: 11:22:47.085
ServerDoneResponse: 11:22:47.101
ClientBeginResponse: 11:22:47.101
ClientDoneResponse: 11:22:47.101
ACTUAL PERFORMANCE
--------------
ClientConnected: 11:35:50.111
ClientBeginRequest: 11:35:59.533
ClientDoneRequest: 11:35:59.533
Gateway Determination: 0ms
DNS Lookup: 0ms
TCP/IP Connect: 0ms
HTTPS Handshake: 0ms
ServerConnected: 11:35:48.845
FiddlerBeginRequest: 11:35:59.533
ServerGotRequest: 11:35:59.533
ServerBeginResponse: 11:36:03.283
ServerDoneResponse: 11:36:03.298
ClientBeginResponse: 11:36:03.298
ClientDoneResponse: 11:36:03.298
~4s
这是IIS问题吗?web服务正在调用ClearQuest API,但当我直接在web服务器上运行时,发出ClearQuest请求没有问题,因此我排除了这一瓶颈
真的困在这里了。谢谢你的帮助
编辑1:我在这里跟踪了主要滞后:
System.Web.Services.Asmx Information: 0 : Return from IHttpHandler.ProcessRequest
Caller: System.Web.Services.Protocols.SyncSessionlessHandler#19197163::ProcessRequest()
ProcessId=4740
LogicalOperationStack=
ThreadId=5
DateTime=2011-12-19T21:21:36.2218996Z
Timestamp=58279486569830475
System.Web.Services.Asmx Information: 0 : Calling IHttpHandlerFactory.GetHandler
Caller: System.Web.Services.Protocols.WebServiceHandlerFactory#50757320::GetHandler()
Request Host Address: 192.168.5.15
Request Host Name: itdotnet.kns.com
Request Url: [POST] http://myurl.com/websvc/CQAccess.asmx
ProcessId=5348
LogicalOperationStack=
ThreadId=6
DateTime=2011-12-19T21:22:25.7834480Z
Timestamp=58279635279292073
请注意,当我遇到这样的问题时,时间戳大约为49s,这是由于服务器执行自动证书吊销检查时出现超时。如果您使用一个或多个已签名或自签名程序集,或者通过SSL使用自签名证书绑定服务,或者可能是代理后面的服务器或没有internet访问权限,则这可能发生在服务器环境中 这个博客很好地记录了这个问题: 在我的例子中,最好的方法是切换到具有可信的第三方签名证书的生产服务器。在其他环境中,我必须禁用证书吊销,并隐式信任发布者证书和所有服务端点的服务器证书 如果上述内容无法回答您的问题,那么本文可能会提供一些其他资源来研究:
如果可以的话,试着在这两个应用程序中都进行性能跟踪,通过这样做,你会很有希望发现什么比它应该做的慢?我运行了fiddler,看到了:ServerGotRequest:11:21:42.412 ServerBeginResponse:11:22:47.085不确定这意味着什么。是的,如果您可以使用jetbrains.com上的DotTrace更新一些数据,而这些数据似乎有明显的延迟,请尝试使用。我不知道该从中得到什么。