IIS腳本運行超時解決
IIS7 設置方法步驟如下:
1、首先,我們需要在OA服務器桌面點開左下角的開始菜單,然后打開“控制面板”中的“管理工具”,打開“Internet信息服務(IIS)管理器”;
2、打開之后,我們在IIS服務管理器界面中的左邊找到服務器節(jié)點展開,然后點擊“應用程序池”;
3、在出現(xiàn)的“應用程序池”頁面中,我們選擇需要配置限制超時設置的應用程序池;
4、選擇好了之后,我們在操作里面點擊“高級設置”;
5、在彈出的對話框中,在“限制超時(分鐘)”中,根據(jù)我們自身的需要輸入分鐘數(shù),完成后就點擊“確定”就可以了。
asp.net 默認的 session state 模式是 in proc(進程內(nèi)),數(shù)據(jù)是在網(wǎng)站的應用程序池里面保存的。這樣在 web.config 設置的超時時間,是在應用程序池沒有發(fā)生回收的基礎上才是有效的。
這樣就出現(xiàn)了問題,為什么應用程序池會發(fā)生回收?如何禁止應用程序池的回收,讓 session 的數(shù)據(jù)可以保存得時間長一點呢?
一、應用程序池設置
這和 IIS 應用程序池的兩個設置有關(guān):
【回收】里面的【固定時間間隔(分鐘)】和【進程模型】里面的【閑置超時(分鐘)】,這兩項的默認設置大概是二十或三十分鐘的樣子。也就是說,在應用程序池的運行時間達到設置的間隔,應用程序池會發(fā)生回收,session 會被清空;在網(wǎng)站空閑,即沒有請求的時間達到設置值,應用程序池會發(fā)生回收,session 會被清空。
這種回收的行為在一個正式運營的網(wǎng)站上面,是很不合適的。我覺得 IIS 的默認值是這樣也有點奇怪,因為默認值應該是一個最通用,適合最多人的一種設置,這兩項的默認值顯然不是??赡?windows 畢竟是最流行的桌面系統(tǒng),考慮到回收可以節(jié)省資源,不影響其他的工作任務,才這樣設置的吧。服務器一般都是單一的工作任務,不進行回收帶來的價值,明顯是高于所消耗的資源的。
所以,如上面的截圖所示,我建議把這兩項都設置為 0,禁用這兩種回收行為。 二、網(wǎng)站屬性 高級設置
IIS性能指標的各種概念:連接數(shù)、并發(fā)連接數(shù)、最大并發(fā)工作線程數(shù)、應用程序池的隊列長度、應用程序池的最大工作進程數(shù)詳解,感興趣的同學參考下。
一般購買過虛擬主機的朋友都熟悉購買時,會限制IIS連接數(shù),這邊先從普通不懂代碼用戶角度理解IIS連接數(shù)。 顧名思義,即為IIS服務器可以同時容納客戶請求的最高連接數(shù),準確的說應該叫“IIS限制連接數(shù)”:
三、網(wǎng)站 會話狀態(tài)
該文章在 2020/6/10 18:38:51 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |