日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

memcache在项目中的应用

發布時間:2023/12/4 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 memcache在项目中的应用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一 ?安裝memcache

具體流程這篇文章有寫到: 點擊?鏈接

?

二 在項目中應用memcache

為了減輕數據庫的查詢壓力,所以我們把一些不經常變動的數據進行緩存,用戶查詢時,如果查詢的要求是一樣的,我們就memcache緩存中讀取數據并返回去,如果查詢要求變了,我們再到數據庫中查詢,并將查詢結果緩存到memcache,以備下次有同樣需求的時候,可以直接從memcache緩存中取出數據

原理:

我們將sql md5轉換成32位字符串,作為key存到memcache, 并將sql查詢的結果data作為對應的value存到memcache

代碼部分:

function inquiry($sql,Memcache $memcache) {$key = md5($sql);$data = $memcache->get($key);if(!$data) {try {$pdo = new PDO('mysql:dbname=test;host=localhost','root','root');} catch (PDOException $e){die("連接失敗:".$e->getMessage());}$stmt = $pdo->prepare($sql);$stmt->execute();$data = $stmt->fetchAll(2);$memcache->add($key,$data,MEMCACHE_COMPRESSED,0);}Return $data;}$memcache = new Memcache;$memcache->connect('localhost',11211);$data = inquiry('select id,name,age,sex,edu,salary,city from student ',$memcache);Var_dump($data);

?

結果是可以正常顯示的

array (size=39)0 => array (size=7)'id' => string '1' (length=1)'name' => string '周更生' (length=9)'age' => string '24' (length=2)'sex' => string '男' (length=3)'edu' => string '大專' (length=6)'salary' => string '5000.00' (length=7)'city' => string '山東省' (length=9)1 => array (size=7)'id' => string '2' (length=1)'name' => string '王小平' (length=9)'age' => string '28' (length=2)'sex' => string '男' (length=3)'edu' => string '大專' (length=6)'salary' => string '500.00' (length=6)'city' => string '陜西省' (length=9)2 => array (size=7)'id' => string '3' (length=1)'name' => string '周改娟' (length=9)'age' => string '28' (length=2)'sex' => string '女' (length=3)'edu' => string '大專' (length=6)'salary' => string '8000.00' (length=7) (size=39)0 => array (size=7)'id' => string '1' (length=1)'name' => string '周更生' (length=9)'age' => string '24' (length=2)'sex' => string '男' (length=3)'edu' => string '大專' (length=6)'salary' => string '5000.00' (length=7)'city' => string '山東省' (length=9)1 => array (size=7)'id' => string '2' (length=1)'name' => string '王小平' (length=9)'age' => string '28' (length=2)'sex' => string '男' (length=3)'edu' => string '大專' (length=6)'salary' => string '500.00' (length=6)'city' => string '陜西省' (length=9)2 => array (size=7)'id' => string '3' (length=1)'name' => string '周改娟' (length=9)'age' => string '28' (length=2)'sex' => string '女' (length=3)'edu' => string '大專' (length=6)'salary' => string '8000.00' (length=7)

分析:

第一次從數據庫中查詢出數據,顯示到瀏覽器,并將md5(sql)和查詢結果data存儲到memcache緩存中

第二次直接從緩存中讀取出數據,顯示到瀏覽器

注: 我們也可以登錄memadmin 去查看是否將結果存到了memcache中。軟件地址:【memcache客戶端可視化管理軟件】?

這樣,我們就完成了基本的memcache在項目中的應用

?

總結

以上是生活随笔為你收集整理的memcache在项目中的应用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。