1.緩存是什么?
用于加速數據交換,達到用時即取的作用。緩存也是優化的一種方式。
2.理解:
一般我們在進行訪問請求網站流程:用戶通過客戶端(瀏覽器)發送請求到服務器端,服務器端連接到數據庫讀取數據,最后服務器把數據
信息返送到客戶端。
加入緩存的理解是:
(1)服務器從數據庫讀取數據時,可以把數據存入內存中,下次用到同樣數據,不需要再次連接數據庫,直接從內存中讀取。
(2)數據庫(mysql)緩存:我們在做sql查詢的時候,可以使用mysql自帶的緩存機制,把更改不頻繁的查詢數據緩存起來,下次查詢直接
在緩存內讀取,大大的節約了查詢時間。
(3)客戶端和服務器端之間用上反向代理服務器,客戶端發送請求,代理服務器會代替客戶端請求服務器,之后把訪問到的時結果緩存到本
服務器,下次客戶端直接在反向代理服務器中把結果得到,極大的加快了訪問速度。
(4)客戶(瀏覽器)端的緩存:用戶訪問網站靜態頁面,可以把靜態頁面緩存到本地文件,下次訪問直接從文件內讀取,不需要走php解析
的過程。
3.優缺點:
優點: 1、 減少了對數據庫的讀操作,數據庫的壓力降低 2、 加快了響應速度
缺點: 1、 因為內存斷電就清空數據,存放到內存中的數據可能丟失
2、 緩存中的數據可能與數據庫中數據不一致
3、 內存的成本高
4、 內存容量相對硬盤小
3.更新機制:
緩存都有自己的最大數據儲存量,當內存滿(達到緩存最大儲存量)時,根據自己不同的更新機制實現內存中的更替。
下面是三種更新機制:
LRU:根據時間,長時間不查詢的數據會先被剔除
FIFO:是一種先入先出,最早的查詢數據優先刪除
LFO:根據查詢次數,查詢次數少的,從緩存中去除
【全文完】版權聲明:
1、陜西弈聰網站內容中凡注明“來源:XXX(非陜西弈聰網站)”的作品,轉載自其它媒體,轉載目的在于傳遞更多信息,其中涉及的網站建設,網站優化,百度關鍵詞優化,西安軟件開發等技術細節并不代表本站贊同支持其觀點,并不對其真實性負責。對于署名“陜西弈聰”的作品系本站版權所有,任何人轉載請署名來源,否則陜西弈聰將追究其相關法律責任。
2、本站內容中未聲明為“原創”的內容可能源自其它網站,但并不代表本站支持其觀點,對此帶來的法律糾紛及其它責任與我方無關。如果此內容侵犯了您的權益,請聯系我方進行刪除。