最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Memcache緩存mysql數(shù)據(jù)庫操作的原理和緩存過程淺析

 更新時(shí)間:2014年07月04日 09:58:29   作者:忙碌的松鼠  
這篇文章主要介紹了使用Memcache緩存mysql數(shù)據(jù)庫操作的原理和緩存過程淺析,本文著重點(diǎn)在Memcache和MySQL數(shù)據(jù)庫的交互過程及流程分解,需要的朋友可以參考下

對(duì)于大型網(wǎng)站如facebook,ebay等網(wǎng)站,如果沒有Memcache做為中間緩存層,數(shù)據(jù)訪問不可能吃得消,對(duì)于一般網(wǎng)站,只要具備獨(dú)立的服務(wù)器,完全可以通過配置Memcache提高網(wǎng)站訪問速度和減少數(shù)據(jù)庫壓力,這里主要討論一下Memcache和MySQL數(shù)據(jù)庫交互過程的流程關(guān)系,了解Memcache的中間緩存層作用,從而深入了解Memcache機(jī)制原理。

Memcache和MySQL交互流程圖

如上圖,傳統(tǒng)的查詢方法是直接查詢數(shù)據(jù)庫,數(shù)據(jù)庫將結(jié)果返回給查詢語句,而當(dāng)有Memcache中間緩存層時(shí),查詢的是Memcache緩存數(shù)據(jù),下面詳細(xì)了解Memcache各類數(shù)據(jù)操作原理:

1. 查詢數(shù)據(jù)(select),首先通過指定的Key查詢(get)Memcache中間緩存層數(shù)據(jù),如果存在相對(duì)應(yīng)數(shù)據(jù),則直接獲取出數(shù)據(jù)結(jié)果,查詢過程完全不需要查詢數(shù)據(jù)庫。如果不存在,則查詢MySQL數(shù)據(jù)庫,并以key對(duì)應(yīng)value的形式將查詢結(jié)果存儲(chǔ)在Memcache緩存數(shù)據(jù)中,然后將結(jié)果返回給查詢語句。
2. 更新數(shù)據(jù)(update),首先更新數(shù)據(jù),然后刪除相關(guān)的memcache數(shù)據(jù)(delete)。
3. 增加數(shù)據(jù)(add),首先刪除相關(guān)緩存數(shù)據(jù),然后增加數(shù)據(jù)。
4. 刪除數(shù)據(jù)(delete),刪除數(shù)據(jù),并刪除Memcache數(shù)據(jù)。

對(duì)MySQL的數(shù)據(jù)操作,主要涉及到的Memcache方法如下:

1. 獲?。篻et(key)
2. 設(shè)置:set(key, value [, expiry])
3. 刪除:delete(key [, time])

實(shí)例:
假設(shè)一個(gè)貼子,獲取貼子ID為2009的值,其Memcache與MySQL交互流程如下:

復(fù)制代碼 代碼如下:

$key = ‘biuuu_thread_';//key前綴
$cachetime = 100;//緩存有效時(shí)間(秒)
$id = 2009;

Memcache基本操作過程

1. 查詢:$result = get($key.$id);如果$result為空,則查詢MySQL數(shù)據(jù)庫,然后set($key.$id,$value,0,$cachetime)
2. 更新:delete($key.$id);
3. 增加:delete($key.$id);
4. 刪除:delete($key.$id);

通過直觀圖和實(shí)例應(yīng)該對(duì)Memcache與MySQL的交互有一個(gè)基礎(chǔ)的掌握,其實(shí)對(duì)于應(yīng)用來說,基本上就已經(jīng)足夠,但如果要涉及到命名空間等相對(duì)復(fù)雜的情況,Memcache的操作方式會(huì)有所不同,但不管什么樣的操作,還是離不開基礎(chǔ)操作命令,由于這是Memcache基礎(chǔ)篇,主要是討論Memcache和mysql交互操作流程,當(dāng)Memcache原理清楚以后,Memcache基本操作就是這么簡(jiǎn)單。

相關(guān)文章

  • MySQL?1130錯(cuò)誤原因分析以及解決方案

    MySQL?1130錯(cuò)誤原因分析以及解決方案

    這篇文章主要給大家介紹了關(guān)于MySQL?1130錯(cuò)誤原因分析以及解決方案的相關(guān)資料,MySQL 1130錯(cuò)誤通常是由于連接MySQL時(shí)使用的用戶名或密碼不正確所導(dǎo)致的,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-10-10
  • mysql給id設(shè)置默認(rèn)值為UUID的實(shí)現(xiàn)方法

    mysql給id設(shè)置默認(rèn)值為UUID的實(shí)現(xiàn)方法

    由于mysql并不支持默認(rèn)值為函數(shù)類型,給id設(shè)值有兩種方式,本文主要介紹了mysql給id設(shè)置默認(rèn)值為UUID的實(shí)現(xiàn)方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-08-08
  • mysql 卡死 大部分線程長(zhǎng)時(shí)間處于sending data的狀態(tài)

    mysql 卡死 大部分線程長(zhǎng)時(shí)間處于sending data的狀態(tài)

    首先說明一下,這是個(gè)無頭的案子,雖然問題貌似解決了,不過到現(xiàn)在我也沒有答案,只是把這個(gè)問題拿出來晾晾
    2008-11-11
  • MySQL全量備份的實(shí)現(xiàn)

    MySQL全量備份的實(shí)現(xiàn)

    全量備份是MySQL數(shù)據(jù)庫備份的常見方式,本文主要介紹了MySQL全量備份的實(shí)現(xiàn),全量備份和增量備份是 MySQL 數(shù)據(jù)庫備份的兩種常見方式
    2024-04-04
  • MySQL全文索引like模糊匹配查詢慢解決方法

    MySQL全文索引like模糊匹配查詢慢解決方法

    這篇文章主要為大家介紹了MySQL全文索引like模糊匹配查詢慢解決方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • SQL?Optimizer?詳細(xì)解析

    SQL?Optimizer?詳細(xì)解析

    這篇文章主要介紹了SQL?Optimizer?解析,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-07-07
  • MySQL中的常用樹形結(jié)構(gòu)設(shè)計(jì)總結(jié)

    MySQL中的常用樹形結(jié)構(gòu)設(shè)計(jì)總結(jié)

    這篇文章主要介紹了MySQL中的常用樹形結(jié)構(gòu)設(shè)計(jì)總結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • 解決mysql連接錯(cuò)誤errorCode 0,state 08S01

    解決mysql連接錯(cuò)誤errorCode 0,state 08S01

    這篇文章主要介紹了解決mysql連接錯(cuò)誤errorCode 0,state 08S01,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • MySQL計(jì)算兩個(gè)日期相差的天數(shù)、月數(shù)、年數(shù)

    MySQL計(jì)算兩個(gè)日期相差的天數(shù)、月數(shù)、年數(shù)

    這篇文章主要介紹了MySQL計(jì)算兩個(gè)日期相差的天數(shù)、月數(shù)、年數(shù),本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-08-08
  • 淺談MySQL user權(quán)限表

    淺談MySQL user權(quán)限表

    MySQL 在安裝時(shí)會(huì)自動(dòng)創(chuàng)建一個(gè)名為 mysql 的數(shù)據(jù)庫,mysql 數(shù)據(jù)庫中存儲(chǔ)的都是用戶權(quán)限表。本文就詳細(xì)的介紹一下MySQL user權(quán)限表 ,感興趣的可以了解一下
    2021-06-06

最新評(píng)論

游戏| 盱眙县| 黄骅市| 昌宁县| 保定市| 安西县| 东平县| 乃东县| 永嘉县| 岳普湖县| 兴宁市| 玉屏| 绍兴市| 武陟县| 英超| 高邮市| 城市| 太保市| 上栗县| 平原县| 全州县| 怀集县| 平南县| 阳泉市| 霸州市| 黑水县| 得荣县| 城口县| 新安县| 进贤县| 扬州市| 清镇市| 天门市| 武平县| 博白县| 康保县| 青铜峡市| 仁寿县| 浦北县| 沙田区| 武隆县|