Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 创建WCF服务通道时偶尔出现延迟_C#_Wcf - Fatal编程技术网

C# 创建WCF服务通道时偶尔出现延迟

C# 创建WCF服务通道时偶尔出现延迟,c#,wcf,C#,Wcf,我有一个使用WCF(代码中有配置)的windows服务,它使用的API也使用WCF(代码中有自己的配置)。在创建通道时,api中偶尔会出现延迟—这些延迟会持续几秒钟到几分钟(根据外部报告,会更长) 在测试应用程序(一个简单的Windows窗体测试应用程序)中使用API时,我可以在一个循环中调用受影响数千次的方法,而不会出现问题 我已经使用服务跟踪程序来确定原因,但它并没有真正将我指向任何特定的方向。我在下面附上了跟踪的截图。可以看出,创建服务通道时存在延迟。延迟后,呼叫始终成功 如果我的解释正确

我有一个使用WCF(代码中有配置)的windows服务,它使用的API也使用WCF(代码中有自己的配置)。在创建通道时,api中偶尔会出现延迟—这些延迟会持续几秒钟到几分钟(根据外部报告,会更长)

在测试应用程序(一个简单的Windows窗体测试应用程序)中使用API时,我可以在一个循环中调用受影响数千次的方法,而不会出现问题

我已经使用服务跟踪程序来确定原因,但它并没有真正将我指向任何特定的方向。我在下面附上了跟踪的截图。可以看出,创建服务通道时存在延迟。延迟后,呼叫始终成功

如果我的解释正确,那么在本例中,“确定端点引用的标识”阶段需要三分钟才能完成

是否有人对造成延迟的原因以及如何修复延迟有任何建议,或者对进一步诊断有任何建议

SvcLog:



(单击图像放大)

在客户端和服务的端点中是否有标识元素……如果是,它们是userPrincipalName还是servicePrincipalName?这些都在服务中经过身份验证,可能需要一些时间。我发现它们是启动延迟的一个来源…但从来没有像3分钟那样。你在一个域中吗?AD可能花费太长时间来验证请求。这与您的客户或服务无关。已为中的EndpointReference确定搜索
标识。即使不是域,也要花很长时间进行身份验证。无论哪种情况,这种情况都会发生在握手过程中。由于您有双通道服务,我假设它们是自托管的,在这种情况下,身份很容易搞乱…尤其是在移动服务时。这里还有一个要看。(刚刚看到.aspx扩展…所以这可能不是问题所在)