簡體   English   中英

即使將debug設置為true,asp.net mvc應用程序在生產中也會超時。 誰可以幫我這個事

[英]asp.net mvc application timeouts in production even when debug is set to true. Can anyone help me on this

我們有一個ASP.Net MVC應用程序。 它已在生產環境中發布,並且在WEb.config中將debug設置為true(不確定原因)。

compilation batch="true" debug="true" targetFramework="4.5"

但是應用程序仍然超時。

我想使debug="false"並添加以下標簽。

httpRuntime executionTimeout="43200" maxRequestLength="104856" targetFramework="4.5"

但是,如果當debug="true"時應用程序超時,那么我認為即使debug="false"時它也將超時,而與執行超時無關。

有什么辦法可以通過Global.asax.cs設置超時時間?

編輯1:如果進程運行超過2分鍾,則應用程序將超時。

因此,這意味着該會話仍然有效。

<sessionState mode="InProc" cookieless="false" timeout="60" />

對於數據庫,我添加了5分鍾的命令超時(僅出於測試目的),但是仍然存在超時。

編輯2:瀏覽日志后,這是錯誤。

The remote host closed the connection. The error code is 0x800703E3

用戶會話可能即將結束,這可能會使其他所有內容都不相關:

在IIS中進行設置:sessionState timeout =“ 120”

或Web.config:

<configuration>
<system.web>
<sessionState mode="InProc" timeout="120"></sessionState>
</system.web>
</configuration>

默認值為20分鍾,因此12小時的httpruntime執行超時將是無關緊要的。

如果您的腳本運行時間較長,請確保具有足夠的連接超時時間來進行初始數據庫連接,並確保數據庫具有命令超時時間。 檢查日志並加載沒有數據庫依賴性的頁面作為測試。

此外,Microsoft文檔指出:

“僅當元素中的debug屬性設置為false時,此超時才適用。”

https://docs.microsoft.com/en-us/dotnet/api/system.web.configuration.httpruntimesection.executiontimeout?view=netframework-4.7.2

因此,在debug當前設置為true的情況下,executetimeout設置將不執行任何操作,直到debug更改為false。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM