久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

PHP數據庫操作二:memcache用法分析

這篇文章主要介紹了PHP數據庫操作memcache用法,結合實例形式詳細分析了memcache的下載、安裝、配置及相關使用技巧,需要的朋友可以參考下

本文實例講述了PHP數據庫操作之memcache用法。分享給大家供大家參考,具體如下:

在一個高并發的web應用中,數據庫存取瓶頸一直是個大問題,一旦達到某個極限,數據庫很容易崩潰,但是如果我們把常用的數據放到內存中,在需要的時候從內存中取,不光讀取速度快,而且節約數據庫IO。

memcache簡介

Memcache是一個高性能的分布式的內存對象緩存系統,通過在內存里維護一個統一的巨大的hash表,它能夠用來存儲各種格式的數據,包括圖像、視頻、文件以及數據庫檢索的結果等。簡單的說就是將數據調用到內存中,然后從內存中讀取,從而大大提高讀取速度。

memcache的mem是內存(memory),cache是緩存,結合是內存緩存的意思。我們應用memcache時,讀取數據先從memcache內讀取,若查找不到再去數據庫里查找,并將數據存入memcache,待下次查找時便能輕易找到。

需要注意:

memcache是內存型的數據庫 ,因為內存的關閉釋放的特性,memcache也無法持久化存儲內容;
memcache內部是分塊存儲,所以大于1M的數據也無法存儲。
memcache依賴libevent庫,安裝前需確認已經安裝了libevent庫。
memcache是一個輕量級的內存型數據庫,只支持key-value型的存儲。
memcache中沒有關于用戶,密碼的設置,所以在配置時要配置防火墻的端口限制連接,以達到安全的目的。
使用repcached也能輕易實現memcache的單master單slave主從復制。

memcache的應用場景

存儲大量不需要持久存儲或數據庫內已存在不會變動的數據。
讀取數據非常頻繁數據,要求小于1M。
數據類型簡單的key-value型數據。
計算好的結果和渲染后的網頁模板文件。
因其原子遞增性,可以用來計數。
因為可以設置數據過期時間的特性,存儲期限數據。不過需要注意,memcache會在分配的內存不足時以最近最少使用原則(LRU)重用內存,可能會導致信息提前被刪除。
用memcache存儲session信息,以達到多服務器session共享。需要配置:php.ini:

session.save_handler = memcache //設置session的儲存方式為memcache 
memcache.hash_strategy = "consistent"http://設置memcache的hash算法為一致性哈希算法。 
session.save_path = "tcp:/ip:port" //設置session儲存的位置,多臺memcache用逗號隔開。

memcache服務器的安裝

memcache的安裝簡單,服務器可以在其官網http://www.memcached.org/下載,解壓后在其目錄下運行./configure -prefix=/path編譯,然后make / make test / make install 得到可以直接執行的二進制文件。

使用./memcached命令即可開啟服務器,其常用參數如下:

-p port 監聽端口 (默認: 11211)
-d 以后臺方式運行Memcached
-u username 運行Memcached的賬戶
-m n 最大的內存使用, 單位是MB,默認 64 MB
-c connections 最大連接數量, 默認是 1024

memcache的常用命令

用memcache客戶端或telnet連接到memcache后,就可以對memcache進行操作了。

memcache數據結構簡單,所以命令行命令也很少,下面以一條常用命令來簡析一下命令格式:

add key flags expire_time length \r\n value

flags:是否壓縮/序列化,通常為0。

expire_time:從存儲后多久過期。以秒(s)為單位,最大為30天的長度,超過30天的長度被視為時間戳表示"到什么時候過期",若設為0表示永不過期。

length:value長度,輸入長度回車之后,命令行會讀取你接下來輸入的length個字符。

set key flags expire_time length  //如果有值則覆蓋原值,沒有則新增,add在有值時會存儲失敗
get key               //獲取key的值
replace key flags expire_time length// 替換一個已存在的key
append/preappend key flags expire_time length// 給key的value后面/前面添加新內容。
preappend key flags expire_time length   // 給key的value前面添加新內容。
inc/dec key [n]             //key的值遞增/遞減1/[n]
delete key               //刪除一個key
flush_all [n]              //[在n秒后]刪除全部數據
stats [options]             //獲取memcache[有關某一項]的詳細信息

PHP的memcache擴展及應用

在https://pecl.php.net/index.php搜索獲取到所需的memcache擴展包。

【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

這篇文章主要介紹了PHP有序表查找之插值查找算法,簡單分析了插值查找算法的概念、原理并結合實例形式分析了php實現針對有序表插值查找的相關操作技巧,需要的朋友可以參考下
下面小編就為大家分享一篇ThinkPHP整合datatables實現服務端分頁的示例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
下面小編就為大家分享一篇PHP實現APP微信支付的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
這篇文章主要介紹了PHP實現的多維數組排序算法,結合實例形式對比分析了php針對多維數組及帶有鍵名的多維數組進行排序相關操作技巧與注意事項,需要的朋友可以參考下
這篇文章主要為大家詳細介紹了php結合ajaxuploadfile實現無刷新文件上傳功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本篇文章給大家詳細介紹了PHP開發接口使用RSA進行加密解密方法,對此有興趣的朋友可以學習下。
主站蜘蛛池模板: 国产乱码精品1区2区3区 | 欧美日韩久久 | 国产成人精品午夜 | 国产午夜视频 | 日本超碰| 欧美性生活视频 | 亚洲精品不卡 | 成人小视频在线免费观看 | 欧美成人一级视频 | 国产精品成av人在线视午夜片 | 91精品麻豆日日躁夜夜躁 | 亚洲成人蜜桃 | 久久曰视频 | 一区二区av| 中文字幕视频在线看5 | 中文字幕不卡在线88 | 欧美一区二区视频 | 天堂影院av| 黄色日本视频 | 免费播放一级片 | av在线播放网站 | 欧美日韩一区二区三区四区 | 亚洲电影在线播放 | av网站在线播放 | 久久精品在线免费视频 | 牛牛热在线视频 | 美女久久视频 | 在线看av网址 | 亚洲精品欧美精品 | 久久精品成人一区 | 奇米久久久 | 美女精品一区 | 羞羞视频网站在线观看 | 午夜精品久久久久久久久久久久久 | 97福利在线| 成人午夜看片 | 亚洲第一成年免费网站 | av看片网| 日本不卡一区二区三区在线观看 | 国产一级久久久久 | 五月天激情电影 |