【发布时间】:2011-06-20 06:03:24
【问题描述】:
我们在服务中有以下 netTcpBinding。在一个特定场景中,我们有一个庞大的数据库操作,大约需要 35 分钟才能完成。我收到“套接字连接被中止”异常。为了避免异常,我应该更改哪些设置?
注意:我几乎在 10 分钟后收到异常。默认值为 10 分钟的配置值是什么?
框架:.Net 3.0
更新:当我申请receiveTimeout="00:30:00"时,大约5分钟后出现以下IE错误“系统无法与外部服务器通信”。
在应用它之前,它曾经是我们应用程序的自定义错误页面。知道我现在应该改变什么吗?
注意:它发生在登台服务器中。 (这个问题在我们的开发环境之前和之后都不可用)
注意:对于 Staging,Web 应用程序托管在 IIS 中。 WCF 托管在 Windows 服务中
<bindings>
<netTcpBinding>
<binding name="AdministrationBinding" maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="32"
maxStringContentLength="2147483647"
maxArrayLength="2147483647"
maxBytesPerRead="2147483647"
maxNameTableCharCount="16384"/>
</binding>
</netTcpBinding>
</bindings>
对应的客户端配置如下:
<binding name="NetTcpBinding_IAdministrationManager"
closeTimeout="00:30:00"
openTimeout="00:30:00"
receiveTimeout="00:30:00" sendTimeout="00:30:00"
transactionFlow="false" transferMode="Buffered"
transactionProtocol="OleTransactions"
hostNameComparisonMode="StrongWildcard"
listenBacklog="10"
maxBufferPoolSize="524288"
maxBufferSize="2147483647"
maxConnections="10"
maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="32"
maxStringContentLength="2147483647"
maxArrayLength="16384" maxBytesPerRead="4096"
maxNameTableCharCount="16384"/>
<reliableSession ordered="true"
inactivityTimeout="00:30:00" enabled="false"/>
<security mode="Transport">
<transport clientCredentialType="Windows"
protectionLevel="EncryptAndSign"/>
<message clientCredentialType="Windows"/>
</security>
</binding>
谢谢
李乔
【问题讨论】:
标签: c# .net wcf exception nettcpbinding