您好,登錄后才能下訂單哦!
Memcache 群集
Memcached 是一個高性能的分布式內(nèi)存對象緩存系統(tǒng),用于動態(tài) Web 應(yīng)用以減輕數(shù)據(jù)庫負(fù)載。它通過在內(nèi)存中緩
存數(shù)據(jù)和對象來減少讀取數(shù)據(jù)庫的次數(shù),從而提高動態(tài)、數(shù)據(jù)庫驅(qū)動網(wǎng)站的速度。 Memcached 基于一個存儲鍵/值
對的 hashmap。其守護(hù)進(jìn)程(daemon )是用 C 寫的,但是客戶端可以用任何語言來編寫,并通過 memcached 協(xié)議
與守護(hù)進(jìn)程通信。
一.安裝軟件
1.四臺都安裝libevent 軟件
21 tar zxf libevent-2.0.22-stable.tar.gz
22 cd libevent-2.0.22-stable/
23 ./configure && make && make install
16 tar zxf keepalived-1.2.13.tar.gz
17 cd keepalived-1.2.13/
18 yum -y install openssl-devel
19 ./configure --prefix=/ && make && make install 編譯安裝
(2)修改vim /etc/keepalived/keepalived.conf
global_defs {
router_id LVS_DEVEL_1
}
vrrp_instance VI_1 {
state MASTER
interface ens33
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.254
}
}
(3)啟動并查看IP地址
3. 安裝 magent 軟件(Magent 服務(wù)器 前兩臺)
22 mkdir /usr/magent 創(chuàng)建所需文件夾
23 tar zxf magent-0.6.tar.gz -C /usr/magent/
24 cd /usr/magent/
25 vim ketama.h
27 ln -s /usr/lib64/libevent-2.0.so.5 /usr/lib64/libevent.a
28 ln -s /usr/lib64/libm.so /usr/lib64/libm.a
29 make
30 ln -s /usr/magent/magent /usr/local/bin/
31 magent -u root -n 51200 -l 192.168.1.254 -p 1200 -s 192.168.1.30:11211 -b 192.168.1.40:11211
32 netstat -anpt | grep 1200
4 .安裝 memcached 軟件(Memcached 服務(wù)器后 2 臺)
21 tar zxf memcached-1.4.33.tar.gz
22 cd memcached-1.4.33/
23 ./configure --prefix=/usr/local/memcached --with-libevent=/usr/local && make && make install
25 ln -s /usr/local/memcached/bin/memcached /usr/local/bin/
26 memcached -d -m 512 -l 192.168.1.30 -p 11211 -c 1024 -P /usr/local/memcached/memcached.pid -u root
27 netstat -anpt |grep 11211
28 yum -y install telnet
三,telnet測試
指令格式:
<命令> <鍵> <標(biāo)記> <有效期> <數(shù)據(jù)長度>
<命令> - command name
主要是三個儲存數(shù)據(jù)的三個命令, set, add, replace
set 命令是保存一個叫做 key 的數(shù)據(jù)到服務(wù)器上
add 命令是添加一個數(shù)據(jù)到服務(wù)器,但是服務(wù)器必須保證這個 key 是不存在的,能夠保證數(shù)據(jù)不會被覆蓋
replace 命令是替換一個已經(jīng)存在的數(shù)據(jù),如果數(shù)據(jù)不存在,就是類似 set 功能
get 查看鍵數(shù)據(jù)
gets 命令獲取帶有 CAS 令牌存 的 value(數(shù)據(jù)值) ,如果 key 不存在,則返回空。
stats 當(dāng)前所有 Memcache 服務(wù)器運(yùn)行的狀態(tài)信息
stats <參數(shù)> 這個指令將只返回指定參數(shù)的項(xiàng)目狀態(tài)信息。
version 將返回以 VERSION 開頭的版本信息
flush_all 這個指令執(zhí)行后,服務(wù)器上所有緩存的數(shù)據(jù)都被刪除,并且返回:OK
delete <鍵> <超時時間> 刪除數(shù)據(jù)的 key 鍵
append 向已存在 key(鍵) 的 value(數(shù)據(jù)值) 后面追加數(shù)據(jù)
prepend 用于向已存在 key(鍵) 的 value(數(shù)據(jù)值) 前面追加數(shù)據(jù)
CAS 通過令牌來修改內(nèi)容
incr 與 decr 命令
Memcached incr 與 decr :命令用于對已存在的 key(鍵) 的數(shù)字值進(jìn)行自增或自減操作。
quit 退出telnet模式
在192.168.1.10 magent上測試
在192.168.1.30 memcached上測試
測試漂移地址
168.1.10
168.1.20
168.1.10
168.1.20
總結(jié):
memcache 的優(yōu)點(diǎn):可以做多主或者多從
memcache 的缺點(diǎn):當(dāng)主緩存節(jié)點(diǎn)當(dāng)?shù)粲只謴?fù),之前的緩存數(shù)據(jù)會丟失
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。