頁面快取與記憶體的消耗

2022-02-08 01:18:30 字數 1071 閱讀 8099

問:

aspx頁面快取後, 記憶體消耗會因為訪問者的數量增加而增加嗎

?把乙個aspx網頁進行了快取後, 當有1000個訪問者同時訪問時, 伺服器的記憶體使用是多少

?如果是1,

000,000個訪問者同時訪問呢

?就是說, aspx頁面快取後, 記憶體消耗會因為訪問者的數量增加而增加嗎

?明白我說什麼嗎?答:

asp.net頁面快取可以根據不同條件對同一頁面保留不同快取頁。

比如同樣對於a.aspx頁面,假設設定為根據url上的引數x的不同而快取不同版本頁面,則當x

=1時系統將保留1份快取,當x

=2時,系統再保留乙份快取,這樣系統中對於a頁面有2個快取,占用2份記憶體,但是對於所有訪問x

=1和x

=2的a頁面的所有使用者請求,不管是 

1,000個還是100,

000,000個,都只是分別訪問記憶體中的這2份快取中的其中乙個而已,不會再增加額外的記憶體消耗,除非有乙個人請求x

=3的頁面,當有人申請x

=3的頁面時,系統會再增加乙個針對x

=3的快取,從而系統中保留了3份a頁面快取。

頁面快取只會根據設定的條件的不同而快取多份頁面,而不是根據請求的數量。對於條件的多個值會快取多份頁面,但是對於同乙個條件的請求,總是使用同乙份快取。

背景介紹:

為了幫助您提高應用程式的效能,asp.net 使用兩種基本的快取機制來提供快取功能。第一種機制是應用程式快取,它允許您快取所生成的資料,如 dataset 或自定義報表業務物件。第二種機制是頁輸出快取,它儲存頁處理輸出,並在使用者再次請求該頁時,重用所儲存的輸出,而不是再次處理該頁。

出於以下原因之一,asp.net 可以從快取中移除資料:

1.由於伺服器上的記憶體不足,開始乙個稱為「清理」的過程。

2.由於快取中的項已過期。

3.由於項的依賴項發生了更改。 

為了幫助管理快取項,在將項從快取中移除時,asp.net 會通知應用程式。

微軟中文技術論壇(msdn and technet) » web 技術 » asp.net 與 ajax » aspx頁面快取後, 記憶體消耗會因為訪問者的數量增加而增加嗎?

虛擬記憶體與頁面快取

作業系統並不直接把記憶體傳給程序,而是現在核心中將記憶體抽象化。這就是虛擬記憶體的機制。這樣可以使程序無需考慮自己使用的記憶體位於什麼位置,可以認為必然從ox000位址開始,這樣處理就能更方便。作業系統會一次性讀出磁碟上的內容,類似的虛擬記憶體機制給程序分配記憶體的時候也不是乙個位元組乙個位元組地訪...

php頁面消耗記憶體過大的處理辦法

解決辦法 1,修改 php.ini 將memory limit由 8www.cppcns.comm 改成 16m 或更大 重啟apache服務 2,在p 檔案中 加入 ini set memory limit 100m 注意 為了系統的其它資源的正常使用 請您不要將 memory limit設定太大...

php頁面消耗記憶體過大處理辦法

是因為php頁面消耗的最大記憶體預設是為 8m 在php的ini件裡可以看到 如果檔案太大 或太大 在讀取的時候 會發生上述錯誤。解決辦法 1,修改 php.ini 將memory limit由 8m 改成 16m 或更大 重啟apache服務 2,在php 檔案中 加入 ini set memor...