asp.net 服務端與用戶端 緩衝

來源:互聯網
上載者:User

伺服器緩衝是把資料放在伺服器的記憶體中,用戶端緩衝則是把資料儲存在瀏覽器裡。

伺服器上某一頁面訪問量較大,且是經常變動的話,用伺服器緩衝比較合適,這樣訪止同一時間造上資料庫連接次數過多的情況。

如果伺服器上某一頁面訪問量較大,但是內容一直不變,或者非常長時間才變動的話,可以用用戶端緩衝,也可以用伺服器端緩衝。

伺服器緩衝不要濫用,要根據具體情況來使用,不然不但起不到提高效率的作用,反而比不使用緩衝更糟糕。
用戶端緩衝濫用會導致使用者長時間瀏覽的一直是固定不變的頁面

具體的用法
伺服器端:
ASP.NET 有三種可由 Web 應用程式使用的緩衝:
1.輸出緩衝:緩衝請求所產生的動態響應.
2.片斷緩衝:緩衝請求所產生的相應的各部分.
3.資料緩衝:以編程方式混存任意對象.

輸出緩衝:(緩衝絕對到期)
通過緩衝從動態網頁產生的內容來提高請求/響應的輸送量.預設情況下啟用輸出緩衝,
但不緩衝來自任何響應的輸出,除非採取顯式操作使該響應成為可快取的.
若要使相應滿足輸出緩衝的條件,它必須具有有效到期/有效性策略和公用的緩衝可
見性.啟用輸出緩衝後,當發出對頁的第一個GET請求時建立一個輸出快取項目。隨後的GET或
HEAD請求由該輸出快取項目服務,直到該緩衝請求到期。
下面的指令在響應時啟用輸出緩衝:
<%@ OutputCache Duration="60" VaryByParam="none"%>

頁片斷緩衝:(單獨緩衝)
<%@ OutputCache Duration="120" VaryByParam="id1;id2"%>
VaryByParam屬性功能非常強大,允許使用者控制項作者指示asp.net在伺服器上緩衝/儲存
輸出快取區域的多個執行個體。
片斷緩衝還支援VaryByControl屬性。VaryByParam屬性基於使用POST或GET發送的名稱
/值對改變緩衝結果,而VaryByControl屬性則通過使用者控制項中的控制項改變緩衝片斷。

頁資料緩衝:
把資料項目放入緩衝:
Cache["mykey"]=myValue;
從緩衝中檢索資料:
myValue=Cache["mykey"];
if(myCache !=null)
{
DisplayData(myValue);
}

用戶端緩衝:

<%@ OutputCache Duration="10" VaryByParam="None" VaryByCustom="browser" %>

另外伺服器緩衝是針對多使用者同時請求同一頁面或資料的情況

用戶端緩衝是針對同一使用者多次訪問相同頁面或資料的情況。

活用緩衝可以對網站的訪問速度有很大的提升,尤其是訪問量大的時候

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.