WCF双工回调超时异常 [英] WCF Duplex Callback TimeOut Exception

查看:72
本文介绍了WCF双工回调超时异常的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用WCF双工服务.

I am working on WCF Duplex service.

已使用WsDualHTTPBinding. (而不是netTCPBinding)来支持互联网上的回调.

Have used the WsDualHTTPBinding for it. (instead of netTCPBinding) so as to support the Callbacks over the internet too.

我们已经使用了添加服务参考"添加代理的机制.

We have used  the "add service reference" mechanism for adding the proxy.

但是有时候,我们在将回调注册到DuplexService时遇到异常.

But sometimes, we get the exception on Registering the callback to the DuplexService.

下面是在调查此问题时收到的WCF跟踪的快照.

Below is the snapshot of the WCF traces ,we received on investigating the Issue.

所有防火墙都已打开,可以在端口62000上发送回叫.

All Firewalls are Opened for sending callback on Port 62000.

但是我在跟踪"中发现的奇怪之处是,在客户端和WCF服务端都将SendTimeOut,OpenTimeOut指定为2分钟的超时时间大约为1分钟.

所以...这是什么超时时间,如果我们可以增加此超时时间?

以下是我的示例配置:

<bindings> <wsDualHttpBinding> <binding name="wsDuplexConfiguration" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" openTimeout="00:02:00" closeTimeout="00:02:00" sendTimeout="00:02:00"> <reliableSession inactivityTimeout="00:10:00" /> <readerQuotas maxStringContentLength="2147483647" maxArrayLength="2147483647" /> </binding> </wsDualHttpBinding> <wsHttpBinding> <binding name="WSHttpBinding_IServiceDataService" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" sendTimeout="00:01:00"> <reliableSession inactivityTimeout="00:10:00" enabled="true" /> <readerQuotas maxStringContentLength="2147483647" maxArrayLength="2147483647" /> <!--Set the security mode to trnsport for deployment enviroments--><!-- <security>--> <security mode="TransportWithMessageCredential"> <transport proxyCredentialType="None" clientCredentialType="None" /> <message clientCredentialType="Certificate" /> </security> </binding> </wsHttpBinding> </bindings> <client>

<端点地址=" https://domainName/ServiceInstance/ServiceDataService.svc/ws" behaviorConfiguration ="CustomBehavior" binding ="wsHttpBinding" bindingConfiguration ="WSHttpBinding_IServiceDataService",合约="Service.IServiceDataService". name =" WSHttpBinding_IEZIADToolService">

<endpoint address="https://domainName/ServiceInstance/ServiceDataService.svc/ws" behaviorConfiguration="CustomBehavior" binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_IServiceDataService"contract="Service.IServiceDataService" name="WSHttpBinding_IEZIADToolService">

        <identity>
          <dns value="domainName" />
        </identity>
      </endpoint>
      <endpoint address="http://domainName/ServiceInstance/ServiceDataSyncService.svc"
        binding="wsDualHttpBinding" bindingConfiguration="wsDuplexConfiguration"
        contract="DataSyncServiceReference.IServiceDataSyncService"
        name="wsDuplexConfiguration">
        <identity>
          <dns value="domainName" />
        </identity>
      </endpoint>
    </client>

我们花了很多时间..请协助.

We invested much of hours on it..Please assist .

先谢谢了!

推荐答案

ankurastogi,

>>尽管在客户端和WCF服务端都将SendTimeOut,OpenTimeOut指定为2分钟.

如果是这样,似乎与WCF服务端的超时设置无关.您的服务需要很长时间才能工作吗?

您如何设置端口62000?您是否在62000之前在客户端设置了入站规则?

如果您可以在WCF服务端与我们共享您的web.config,将会很有帮助.

最好的问候

爱德华


这篇关于WCF双工回调超时异常的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆