PHP相關緩存技術

一、PHP腳本緩存

1、  APC

Alternative Php Cache(APC)是 php 的一個免費公開的優化代碼緩存。它用來提供免費,公開並且強健的架構來緩存和優化 php 的中間代碼。

apc的用法比較簡單,只有幾個函數,列舉如下

(1)apc_clear_cache() 清除apc緩存內容

默認(無參數)時,只清除系統緩存,要清除用戶緩存,需用’user’參數

(2)apc_define_constants ( string key, array constants [, bool case_sensitive] )

將數組constants以常量加入緩存

(3)apc_load_constants (string Key)

取出常量緩存

(4)apc_store ( string key, mixed var [, int ttl] )

在緩存中保存數據

(5)apc_fetch ( string key )

獲得apc_store保存的緩存內容

(6)apc_delete ( string key )

刪除apc_store保存的內容

 

2、  eAccelerator

eAccelerator是一個自由開放源碼php加速器,優化和動態內容緩存,提高了php腳本的緩存性能,使得PHP腳本在編譯的狀態下,對服務器的 開銷幾乎完全消除。 它還有對腳本起優化作用,以加快其執行效率。使您的PHP程序代碼執效率能提高1-10倍。

 

3、  XCache

XCache 是一個開源的 opcode 緩存器/優化器, 這意味着他能夠提高您服務器上的 PHP 性能. 他通過把編譯 PHP 後的數據緩衝到共享內存從而避免重複的編譯過程, 能夠直接使用緩衝區已編譯的代碼從而提高速度. 通常能夠提高您的頁面生成速率 2 到5 倍, 降低服務器負載.

 

二、MySQL數據庫緩存

memcache

memcache是一個高性能的分佈式的內存對象緩存系統,通過在內存裏維護一個統一的巨大的hash表,它能夠用來存儲各種格式的數據,包括圖像、視頻、文件以及數據庫檢索的結果等。

Memcached在很多時候都是作爲數據庫前端cache使用的。因爲它比數據庫少了很多SQL解析、磁盤操作等開銷,而且它是使用內存來管理數據的, 所以它可以提供比直接讀取數據庫更好的性能。

Memcached有一個很有特色的內存管理方式,爲了提高效率,它使用預申請和分組的方式管理內存空間

 

三、服務器緩存

squid

Squid是一種在Linux系統下使用的優秀的代理服務器軟件。

對於Web用戶來說,Squid是一個高性能的代理緩存服務器,可以加快內部網瀏覽Internet的速度,提高客戶機的訪問命中率。Squid不僅支持HTTP協議, 還支持FTP、gopher、SSL和WAIS等 協議。和一般的代理緩存軟件不同,Squid用一個單獨的、非模塊化的、I/O驅動的進程來處理所有的客戶端請求。

  Squid將數據元緩存在內存中,同時也緩存DNS查尋的結果,除此之外,它還支持非模塊化的 DNS查詢,對失敗的請求進行消極緩存。Squid支持SSL,支持訪問控制。由於使用了ICP,Squid能夠實現重疊的代理陣列,從而最大限度的節約 帶寬。

 

四、生成靜態頁面

PHP:Output Control Functions

ob_start

ob_end_flush

ob_end_clean


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