在IIS6中每個應用程序池在獨立的進程中運行,默認每個應用程序池開啟一個進程
在應用程序池屬性的“性能”頁,可以設置每個程序池的進程數,如下圖
今天修改了論壇(asp程序)配置,把工作進程數改為2個,問題就出來了,論壇用戶始終登錄不進去!
在百度找了一下就找到了下面的答案,注意紅色部分。
原來同一程序池中,不同工作進程的會話信息是獨立的,如果在登錄頁面是在進程一中執行,那登錄成功的session信息就保存在進程一中。登錄成功后轉到另一個頁面,如果這時又輪到另一個進程來執行這個頁面,那么這個在頁面中是訪問不到剛才保存的會話信息的,這樣此頁面就會認識用戶是沒有登錄。
iis網站的web園的最大工作進程數設置大于1,session就失效的解決辦法
iis網站的web園的最大工作進程設置后導致session失靈,當進程數大于1,session就失效的解決辦法
SESSION是保存在進程里面,所以,WEB園大于1時,有兩進程,不能互相保證SESSION,所以失?。?br />把SESION設置成保存在服務器,便能解決了!
SESION設置成保存在服務器:ASP.NET配置設置―>狀態管理―>會話狀態設置 改為StateServer
武林網之家小編補充如下:
什么是 Web 園?
問: IIS 6.0 具有一個名為 Web 園的新功能,有了它,可以將應用程序池配置為使用多個工作進程。IIS 何時創建額外的工作進程?在我們實施 Web 園之前,我們應該了解哪些知識?
答:在您創建應用程序池時,就會通知 IIS 6 創建一個工作進程,以傳送指派給該應用程序池的 Web 站點、文件和文件夾的內容。您可以將應用程序池配置為啟動多個,而非一個工作進程,這樣可以提高可擴展性。這個功能的名為 Web 園,是小型的“Web 農場”。您無需使用多臺計算機來傳送相同的內容(Web 農場),而是可以使用一臺計算機中的多個進程來傳送相同的內容。
在將 IIS 6 應用程序配置為 Web 園時,您只需在“應用程序池屬性”的“性能”選項卡的“最大工作進程數”框中,設置一個大于 1 的工作進程數。如果這個值大于 1,每個請求都將啟動一個新的工作進程實例,可啟動的最多進程數為您所指定的最大工作進程數。后續的請求將以循環的方式發送至工作進程。
Web 園在您的應用程序資源有限的情況下非常有用。例如,如果您到數據庫的連接很慢,那么您可以使用多個工作進程來增加用戶吞吐量,從而增加到數據庫的連接數。
盡管在有些情況下使用 Web 園的用處非常大,但是要注意,每個工作進程的會話信息都是唯一的。由于請求以循環的方式路由到應用程序池工作進程,因此 Web 園對于會話信息存儲在進程中的應用程序作用可能不大。在少數情況下,讓多個工作進程運行同一個應用程序會造成資源競爭。例如,如果所有工作進程都試圖將信息記錄到日志文件中,或是使用那些不是專用于多個并發訪問的資源,那么可能出現資源競爭問題。
如果不存在這些問題,那么 Web 園可能正是您所需的功能之一,而且其作用會非常大。
新聞熱點
疑難解答