[WebService]延長WebService(ex:WCF或是WebAPI)的執行時間(也許幾個小時)

  • 1444
  • 0

[WebService]延長WCF或是WebAPI的執行時間(也許幾個小時)

需要設定Web.config以及設定IIS的應用程式集區:
1.設定Web.config的httpruntime屬性的秒數(目標是執行八小時,因此這裡設定為28800秒):

<configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <system.web>
    <httpRuntime executionTimeout="28800"/>
  <compilation debug="false" targetFramework="4.0" />  
  </system.web>
</configSections>  

2.設定IIS的應用程式集區的「閒置逾時(分)」,這是以分鐘為單位,因此設定為480分鐘(=28800秒)

參考文章:
How to increase executionTimeout for a long-running query?
http://stackoverflow.com/questions/10649843/how-to-increase-executiontimeout-for-a-long-running-query/34220177#34220177