您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關設置php緩存的方法的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
設置php緩存的方法:1、使用Memcached高性能的分布式內(nèi)存對象緩存系統(tǒng),用于動態(tài)Web應用以減輕數(shù)據(jù)庫負載;2、使用Redis實現(xiàn)緩存;3、使用APC開放自由的PHP opcode緩存。
設置php緩存的方法:
緩存技術可減輕服務器負載、降低網(wǎng)絡擁塞、增強WWW可擴展性,其基本思想是利用客戶訪問的時間局部性,將客戶訪問過的內(nèi)容在Cache中存放一個副本,當該內(nèi)容下次被訪問時,不必連接到駐留網(wǎng)站,而是由Cache中保留的副本提供。緩存是一個很重要的技術,下面是自己使用的幾個緩存技術,記錄一下。
1、文件緩存
2、Memcached 是一個高性能的分布式內(nèi)存對象緩存系統(tǒng),用于動態(tài)Web應用以減輕數(shù)據(jù)庫負載。它通過在內(nèi)存中緩存數(shù)據(jù)和對象來減少讀取數(shù)據(jù)庫的次數(shù),從而提高動態(tài)、數(shù)據(jù)庫驅動網(wǎng)站的速度。Memcached基于一個存儲鍵/值對的hashmap。其守護進程(daemon )是用C寫的,但是客戶端可以用任何語言來編寫,并通過memcached協(xié)議與守護進程通信,php有memcached擴展,安裝好了即可使用。
// 初始化 $cache = new Memcache(); $cache->pconnect(CACHE_HOSTNAME, CACHE_PORT); // 寫入 $cache->set(CACHE_PREFIX . $key, $value, MEMCACHE_COMPRESSED, $expire);(CACHE_PREFIX 為了避免命名沖突,最好加一個前綴,MEMCACHE_COMPRESSED一個標記,設置為0表示不壓縮) // 讀取 $cache->get(CACHE_PREFIX . $key); // 刪除 $cache->delete(CACHE_PREFIX . $key);
3、Redis是一個開源的使用ANSI C語言編寫、支持網(wǎng)絡、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫,并提供多種語言的API。類似的安裝好php擴展// 初始化$cache = new Redis();
// 初始化$cache = new \\Redis(); $cache->connect(CACHE_HOSTNAME, CACHE_PORT); // 先檢查是否存在,然后寫入并設置有效時間 if($cache->exists($key)){ $cache->delete(CACHE_PREFIX . $key); } $cache->set(CACHE_PREFIX . $key, serialize($value)); $cache->expire(CACHE_PREFIX . $key, $expire); // 讀取 $cache->get(CACHE_PREFIX . $key);
4、APC
Alternative PHP Cache (APC) 是一個開放自由的PHP opcode 緩存。它的目標是提供一個自由、 開放,和健全的框架用于緩存和優(yōu)化PHP的中間代碼。
這個試了半天沒成功,windows一開啟就報錯,記下以后再試。
php內(nèi)置的,無需類似上面兩種去連接初始化什么的。
// 寫入 apc_store(CACHE_PREFIX . $key, $value, $expire); // 讀取 apc_fetch(CACHE_PREFIX . $key); // 刪除 apc_delete(CACHE_PREFIX . $key);
感謝各位的閱讀!關于設置php緩存的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。