91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php緩存怎么使用

發布時間:2021-12-31 09:45:48 來源:億速云 閱讀:115 作者:iii 欄目:開發技術

本篇內容介紹了“php緩存怎么使用”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

一個網站或者一個應用的標準流程是瀏覽器向應用服務器發出請求,應用服務器做一些計算和邏輯判斷之后再請求數據庫,數據庫收到請求后在經過計算將數據返回給應用服務器,應用服務器再次計算后把數據返回給瀏覽器

那么,隨著web業務的復雜度和并發量的增加,應用服務器所做的計算和邏輯處理越來越多,而應用服務器的資源是有限的,且數據庫每秒接受并處理請求的次數也是有限的。為了在有限的資源提供盡可能多的吞吐量,就是減少計算量,縮短請求流程(減少網絡I/O或硬盤I/O)。這時,就用到了緩存(Cache)

php緩存類型

1、數據緩存:

數據緩存:這里所說的數據緩存是指數據庫查詢PHP緩存機制,每次訪問頁面的時候,都會先檢測相應的緩存數據是否存在,如果不存在,就連接數據庫,得到數據,并把查詢結果序列化后保存到文件中,以后同樣的查詢結果就直接從緩存表或文件中獲得。

用的最廣的例子看Discuz的搜索功能,把結果ID緩存到一個表中,下次搜索相同關鍵字時先搜索緩存表。

舉個常用的方法,多表關聯的時候,把附表中的內容生成數組保存到主表的一個字段中,需要的時候數組分解一下,這樣的好處是只讀一個表,壞處就是兩個數據同步會多不少步驟,數據庫永遠是瓶頸,用硬盤換速度,是這個的關鍵點。

2、頁面緩存:

每次訪問頁面的時候,都會先檢測相應的緩存頁面文件是否存在,如果不存在,就連接數據庫,得到數據,顯示頁面并同時生成緩存頁面文件,這樣下次訪問的時候頁面文件就發揮作用了。(模板引擎和網上常見的一些PHP緩存機制類通常有此功能)

3、時間觸發緩存:

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

4、內容觸發緩存:

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

5、靜態緩存:

這里所說的靜態緩存是指靜態化,直接生成HTML或XML等文本文件,有更新的時候重生成一次,適合于不太變化的頁面,這就不說了。

實例擴展:

Memcached;

是一個高性能的分布式內存對象緩存系統,用于動態Web應用以減輕數據庫負載。它通過在內存中緩存數據和對象來減少讀取數據庫的次數,從而提高動態、數據庫驅動網站的速度。Memcached基于一個存儲鍵/值對的hashmap。

// 初始化
$cache = new Memcache();
$cache->pconnect(127.0.0.1, 11211);
// 寫入
$cache->set(CACHE_PREFIX . $key, $value, MEMCACHE_COMPRESSED, $expire);(CACHE_PREFIX 為了避免命名沖突,最好加一個前綴,MEMCACHE_COMPRESSED一個標記,設置為0表示不壓縮)
// 讀取
$cache->get(CACHE_PREFIX . $key);
// 刪除
$cache->delete(CACHE_PREFIX . $key);

Redis

是一個開源的使用ANSI C語言編寫、支持網絡、可基于內存亦可持久化的日志型、Key-Value數據庫,并提供多種語言的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);

“php緩存怎么使用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

南皮县| 卓资县| 施甸县| 商水县| 冷水江市| 广宁县| 老河口市| 延寿县| 永昌县| 保德县| 当阳市| 油尖旺区| 治县。| 宣化县| 西华县| 保山市| 历史| 桐庐县| 永丰县| 湄潭县| 呼图壁县| 鲜城| 磐石市| 扎鲁特旗| 龙江县| 长海县| 娱乐| 西和县| 来凤县| 宁化县| 搜索| 惠州市| 石家庄市| 台东县| 顺平县| 纳雍县| 凌源市| 永宁县| 尚义县| 钟祥市| 汶川县|