redis分散式緩存「memcache安裝教程」

一、分散式部署設置:

memcached 雖然稱為 「 分散式 」 緩存伺服器,但伺服器端並沒有 「 分散式 」 功能。每個伺服器都是完全獨立和隔離的服務。 memcached 的分散式,則是完全由客戶端程序庫實現的。 這種分散式是 memcached 的最大特點。所以部署時以相同的方式在不同伺服器上安裝部署即可。

二、監控:

一個簡單的命令行工具memcache-top

下載網址:
http://code.google.com/p/memcache-top/

下載之後放在/root/soft目錄下

運行命令:

perl memcache-top-v0.6 –instances=ip:埠號,ip:埠號

兩台伺服器:

perl/root/soft/memcache-top-v0.6–instances=192.168.175.100:11211,192.168.175.100:11211

運行效果如下:

Memcached分散式部署常用設置與測試

daemontools: 監視memcached進程並自動啟動.

網址:
http://cr.yp.to/daemontools.html

通常情況下memcached運行得相當穩定,但也不排除因為一些不可預知的因素導致memcached進程死掉,而又不能及時的發現重啟。架構上保證了即使有幾台memcached故障 也不會影響服務,不過對於memcached進程死掉的伺服器,只要重新啟動memcached,就可以正常運行,所以採用了監視memcached進程並自動啟動的方法。於是使用了daemontools。

這裡不介紹daemontools的安裝了。我使用了以下的run腳本來啟動memcached。

#!/bin/sh

exec 2>&1

exec /usr/local/bin/memcached -d -u root -m 1024 -p 11211 -c 2048 -P /tmp/memcached.pid

三、測試

服務端:

兩台伺服器,各啟動兩個進程,分配200M內存

啟動參數:

/usr/local/bin/memcached -d -m 200 -u root -p 11211

/usr/local/bin/memcached -d -m 200 -u root -p 11212

監控啟動:

perl/root/soft/memcache-top-v0.6–instances=192.168.175.100:11211,192.168.175.100:11212,192.168.175.101:11211,192.168.175.101:11212

基於spymemcached測試

1、 打開監控

Memcached分散式部署常用設置與測試

2、 往memcached插入10000條數據

MemcachedClient c=new MemcachedClient(

AddrUtil.getAddresses(

「192.168.175.100:11211 192.168.175.100:11212

192.168.175.101:11211 192.168.175.101:11212″));

for(int i=0;i<10000;i++){

c.set(「key_」+i, 3600, 「value_」+i);

}

插入數據之後監控畫面:

Memcached分散式部署常用設置與測試

四個memcached服務都存在,讀取監控也同上圖。

取值代碼:

MemcachedClient c=new MemcachedClient(

AddrUtil.getAddresses(

「192.168.175.100:11211 192.168.175.100:11212

192.168.175.101:11211 192.168.175.101:11212″));

for(int i=0;i<10000;i++){

String key = 「key_」+i;

Object obj = c.get(key);

System.out.println(key+」=」+obj);

}

3、 重啟服務101:11212,再讀取這10000個值,監控結果如下

Memcached分散式部署常用設置與測試

說明某台伺服器的數據丟失之後不會影響其它伺服器的數據和讀取。

4、 去掉某台服務,再讀取這10000個值,監控結果如下

去掉服務101:11212,獲取監控如下:

Memcached分散式部署常用設置與測試

增加一個新的服務,101:11213,獲取監控如下:

Memcached分散式部署常用設置與測試

可見,節點的變化會影響命中率。

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/235033.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-12 11:50
下一篇 2024-12-12 11:50

相關推薦

發表回復

登錄後才能評論