網(wǎng)頁(yè)緩存?

CodeIgniter 可以讓你通過(guò)緩存頁(yè)面來(lái)達(dá)到更好的性能。

盡管 CodeIgniter 已經(jīng)相當(dāng)高效了,但是網(wǎng)頁(yè)中的動(dòng)態(tài)內(nèi)容、主機(jī)的內(nèi)存 CPU 和數(shù)據(jù)庫(kù)讀取速度等因素直接影響了網(wǎng)頁(yè)的加載速度。 依靠網(wǎng)頁(yè)緩存, 你的網(wǎng)頁(yè)可以達(dá)到近乎靜態(tài)網(wǎng)頁(yè)的加載速度,因?yàn)槌绦虻妮敵鼋Y(jié)果 已經(jīng)保存下來(lái)了。

緩存是如何工作的??

可以針對(duì)到每個(gè)獨(dú)立的頁(yè)面進(jìn)行緩存,并且你可以設(shè)置每個(gè)頁(yè)面緩存的更新時(shí)間。 當(dāng)頁(yè)面第一次加載時(shí),文件將會(huì)被當(dāng)前的緩存引擎所配置的方式緩存起來(lái)(譯者注:例如文件緩存,memcache緩存等)。 之后請(qǐng)求這個(gè)頁(yè)面時(shí),就可以直接從緩存文件中讀取內(nèi)容并輸出到用戶(hù)的瀏覽器。 如果緩存過(guò)期,會(huì)在輸出之前被刪除并重新刷新。

注解

基準(zhǔn)標(biāo)記沒(méi)有緩存,所以當(dāng)緩存啟用時(shí),仍然可以查看頁(yè)面加載速度。

開(kāi)啟緩存?

將下面的代碼放到任何一個(gè)控制器的方法內(nèi),你就可以開(kāi)啟緩存了:

$this->cachePage($n);

其中 $n 是緩存更新的時(shí)間(單位分鐘)。

上面的代碼可以放在方法的任何位置它出現(xiàn)的順序?qū)彺鏇](méi)有影響,所以你可以把它放到任何你認(rèn)為合理的地方。一旦該代碼被放在方法內(nèi),你的頁(yè)面就開(kāi)始被緩存了。

重要

如果你修改了可能影響頁(yè)面輸出的配置,你需要手動(dòng)刪除你的緩存文件。

注解

在寫(xiě)入緩存文件之前,必須通過(guò)編輯 app/Config/Cache.php 文件來(lái)設(shè)置緩存引擎。

刪除緩存?

如果你不再需要緩存某個(gè)頁(yè)面,你可以刪除掉該頁(yè)面上的緩存代碼,這樣它在過(guò)期之后就不會(huì)刷新了。

注解

刪除緩存代碼之后并不是立即生效,必須等到緩存過(guò)期才會(huì)生效。