WEB程序獲取信息的方式主要是查詢數據庫,當數據庫不是很大的情況下不會有太大的問題.然而,隨著網站的發展,數據庫呈幾何級數的方式增長的時候,就會出現瓶頸.於是PHP緩存技術誕生了。PHP緩存包括PHP編譯緩存和PHP數據緩存兩種。
PHP是一種解釋型語言,屬於邊編譯邊運行的那種。這種運行模式的優點是程序修改很方便,但是運行效率卻很低下。PHP編譯緩存針對這種情況做改進處理,使得PHP語言只要運行一次,就可以把程序的編譯結果緩存起來。這樣,接下來的每次運行都不需要再次編譯了,這大大提高PHP運行速度。
PHP數據緩存運用於PHP實際開發之中針對數據處理進行緩存,主要兩大方向為:針對數據庫數據進行緩存和針對PHP模板數據進行緩存。
PHP編譯緩存:目前最常見的PHP編譯緩存工具有:APC,Accelerator,xcache(國產)等。
PHP是一種解釋型語言,在PHP語言執行代碼的時候,需要下面兩步:
1、編譯過程。PHP讀取文件,並編譯該文件,然後生成能夠在Zend Engine虛擬機上執行的中間碼。
2、執行過程。PHP直接執行中間碼。
以下兩種情況,會導致PHP運行程序代碼效率低下:
1、即使PHP代碼文件沒有發生改變,也會被PHP重新編譯。
2、如有引用文件,PHP也要花費時間重新編譯這些被引用的文件。因此,需要PHP編譯緩存工具對PHP程序的編譯結果做緩存處理。這樣,PHP程序只要編譯一次,就不要重新再做無意義的編譯了。
PHP數據緩存:PHP的數據緩存包括針對數據庫數據進行緩存和針對PHP模板數據進行緩存。針對數據庫數據進行緩存的工具有memcache等。針對PHP模板數據進行緩存的工具主要有smarty等。