2013-05-13 75 views
0

我在IIS7上託管了WCF。當我嘗試使用需要超過90秒才能產生結果的服務時,它會在90秒後超時。增加iis7上託管的WCF超時

  1. 在web配置,我有我的executionTimeout增加到900秒
  <system.web> 
     <compilation debug="false" strict="false" explicit="true" targetFramework="4.5" /> 
     <httpRuntime targetFramework="4.5" executionTimeout="900" shutdownTimeout="900" maxRequestLength="2097152" enable="true"/> 
     <pages> 
      <namespaces> 
      <add namespace="System.Runtime.Serialization"/> 
      <add namespace="System.ServiceModel"/> 
      <add namespace="System.ServiceModel.Web"/> 
      </namespaces> 
     </pages> 
     <customErrors mode="Off"/> 
    <trace enabled ="true" pageOutput ="true" requestLimit ="20" traceMode="SortByTime" />  
    </system.web>
  1. 在IIS的一面,我已經設置scriptTimeout至00:05: 10。 (默認網站 - > ASP的>限制屬性 - > scriptTimeout)

  2. 在應用程序池,高級設置,我已經設置平最大響應時間爲300秒(以及關閉時間限制。雖然我)

即使我增加了每個超時變量,我可以發現超過90秒,我的服務仍然超時在90秒。

任何人都知道我可能錯過了超時?

回答

0

我從我的測試服務器上的配置中取得了這個...這個工程。你一定要改變這些值。

<binding name="tcp_unsecured_HighLimit" closeTimeout="23:59:59" openTimeout="23:59:59" receiveTimeout="23:59:59" sendTimeout="23:59:59" > 
     <readerQuotas maxDepth="104857600" maxStringContentLength="2000000000" maxArrayLength="2000000000" 
        maxBytesPerRead="2000000000" maxNameTableCharCount="2000000000" /> 
     <security mode="None" /> 
    </binding> 
    </netTcpBinding> 
</bindings> 

+0

我默認的Web.config由Visual Studio 2012創建不包含任何綁定或服務。我能夠添加它們,但它們對服務運行方式沒有影響。它仍然在90秒內超時。 (我甚至無法將時間縮短到小於配置的時間)。 – 2013-05-15 12:51:59

+0

確保您將這些設置添加到您的客戶端配置!這些設置應該用於服務和客戶端。 – Jeff 2013-05-15 21:03:55