Memcached 快取體系

2021-07-03 00:01:28 字數 1692 閱讀 1322

關於memcached的博文太多了,以下是個人學習的收集整理。

本節討論問題:

一、介紹與應用

關於memcached以下為摘自博文

客戶端的版本比較多,並且不能互用,因為採用了壓縮機制,日誌等功能,所以在選擇客戶端時要注意這些。

a.windows下 直接使用memcached.exe 程式就可以了,也可以將此程式安裝為windows服務。安裝為windows服務後要通過telnet命令來操作服務端

命令列輸入 'c:\memcached\memcached.exe -d install' 

命令列輸入 'c:\memcached\memcached.exe -d start' ,該命令啟動 memcached ,預設監聽埠為 11211

b.安裝為單一服務不方便管理,這裡有借助於memcacheddotnet_clientlib開發的一款服務端管理工具

我們來看一下服務端工具安裝後檔案結構

執行服務端管理工具,建立memcached服務端,以下為演示步驟

1 服務端配置

2 新增memcached服務

3 狀態觀察

4.檢視generate配置資訊,提供給客戶端配置檔案使用.

借助服務端管理工具可以方便的觀察,或者你也可以採用telnet方式訪問檢視了。這樣服務端工作就進行了完了,接下來就是要選擇一款合的客戶端開發了

windows / .net

a. .net memcached client    1.1.5版本測試一下。

client developed in .net 2.0 keeping performance and extensibility in mind. (supports consistent hashing.) 

(pdf 文件)

d. jehiah

三、簡單測試

1.memcacheddonet client測試 1.1.5版本 原始碼有src包

分別設定了3臺,4臺,5臺伺服器測試了3次,測試結果如下:

100條資料都確實存上去成功了,但是取資料命中率會隨著伺服器增多急劇下降!才幾台測試伺服器,結果就如此差!問題出在**了呢? 伺服器的memcached.exe太老了? 還是看一下memcached的實現原理了

裡面提到查詢伺服器端資料的演算法 是求餘演算法 ,而這中演算法的命中率很差,並且隨便伺服器節點的變動(增加或刪除節點)命中率急劇下降。

windows體系使用memcached

1.簡述 memcached官方並不提供原生的donet體系方案,server端需要在linux環境下編譯成windows下的exe包,這裡的server端為1.4.13版本,需要新版本的需要自己編譯,window體系下,使用memcached做快取,建議採用 主從架構 業務快取和配置快取隔離,方便...

memcached 快取應用問題

快取穿透與快取雪崩 快取系統不得不考慮的另乙個問題是快取穿透與失效時的雪崩效應。快取穿透是指查詢乙個一定不存在的資料,由於快取是不命中時被動寫的,並且出於容錯考慮,如果從儲存層查不到資料則不寫入快取,這將導致這個存在的資料每次請求都要到儲存層去查詢,失去了快取的意義。有很多種方法可以有效地解決快取穿...

memcached快取架構優化

基本架構 web nginx php php fpm 9000 memcached mysql 安裝memcache工具包 yum install memcached y systemctl start memcached 安裝memcache原始碼包 tar zxf memcache 4.0.5....