php緩存未實踐先理論

使用緩存技術的理由?當然是提高網站的訪問速度!

 

聽到php緩存技術是什麼時候?不記得了,呵呵,工作當中一直沒注意這個。惱火~~

 

今天瘋狂Google了一下,或多或少了解了一些東西,那就簡單的歸納一下吧,各位看官別扔磚頭!

 

緩存技術分爲動態緩存技術和靜態緩存技術,對於那些PV不是很大的中小型網站使用動態緩存技術估計也就差不多了,但對於PV很大的網站還得使用靜態緩存技術。

 

緩存,那到底緩存些個啥呢?

 

一、緩存數據

   adodb就是緩存的數據,當第一次執行某條數據庫查詢的時候,adodb會將本次查詢獲取的結果集進行緩存,下次再執行相同的sql語句時就不用再次對數據庫進行操作了,挺好~!~

 

二、頁面緩存

    用了很久的smarty,一直沒想過去研究smarty的緩存技術,今天看了,恩,它就是頁面緩存。哈哈!~!~可惜,每次還得php解析一次的哦~~

 

阿彌陀佛~!~

 

那麼緩存何時更新呢?什麼情況下更新呢?

 

PHP緩存技術之時間觸發緩存:

  檢查文件是否存在並且時間戳小於設置的過期時間,如果文件修改的時間戳比當前時間戳減去過期時間戳大,那麼就用緩存,否則更新緩存。

  設定時間內不去判斷數據是否要更新,過了設定時間再更新緩存。以上只適合對時效性要求不高的情況下使用,否則請看下面。

PHP緩存技術之內容觸發緩存:

 

  當插入數據或更新數據時,強制更新緩存。

  在這裏我們可以看到,當有大量數據頻繁需要更新時,最後都要涉及磁盤讀寫操作。怎麼解決呢?我在日常項目中,通常並不緩存所有內容,而是緩存一部分不經常變的內容來解決。但在大負荷的情況下,最好要用共享內存做緩存系統。

 

  上述方法每次請求仍然要經過PHP解析,在大負荷的情況下效率問題還是比效嚴重,在這種情況下,也許會用到靜態緩存。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章