在 Web 開發(fā)領(lǐng)域,緩存作為一種程序技術(shù)被廣泛的應(yīng)用。那么到底什么是緩存呢?Django 中緩存系統(tǒng)又起到了哪些關(guān)鍵作用呢?我們一起來了解一下。
1. 緩存技術(shù)的作用
緩存是指保存一些計算開銷較大的數(shù)據(jù),可以是某個網(wǎng)頁,也可以是網(wǎng)頁的一部分,或者僅僅只是格式化的數(shù)據(jù),合理運用緩存技術(shù)可以減少數(shù)據(jù)庫訪問次數(shù),不用每次都到數(shù)據(jù)庫中讀取數(shù)據(jù),從而優(yōu)化了網(wǎng)頁的訪問速度。
緩存系統(tǒng)真正的提高了 Web 站點執(zhí)行效率,常被用來緩存用戶經(jīng)常訪問的頁面,比如網(wǎng)站的首頁等,用戶再次訪問的時候直接返回已經(jīng)緩存的內(nèi)容,從而減小了 Web 服務(wù)器的壓力。
2. Django 緩存系統(tǒng)
Django 提供了一個健壯的緩存系統(tǒng),可以保存動態(tài)頁面,這樣就不必每次都把相同的請求進(jìn)行重復(fù)計算。并且 Django 還提供了不同級別的緩存粒度,可以緩存特定視圖的輸出,或者只緩存某些特定的片段,比如網(wǎng)站自動跳出的咨詢欄等,或者也可以緩存整個站點。
同時 Django 還支持多種緩存類型,可以根據(jù)實際情況來選擇用哪種類型,例如 Memcached、數(shù)據(jù)庫、文件系統(tǒng)等。
Memcached 是 Django 支持的最快、最高效的分布式高效緩存系統(tǒng),它是一種完全基于內(nèi)存的緩存服務(wù)器。它被 Facebook 、維基百科等網(wǎng)站使用,從而減少數(shù)據(jù)庫的訪問并顯著提高網(wǎng)站的性能。