Memcache集羣高可用方案

方案說明:

通過一系列測試,發現通過magent代理多臺memcache有個問題,就是當master掛了之後再次啓動就會把用戶踢出去,也就是sesson miss。爲了解決該問題,需要在此基礎上利用repcached進行雙主的數據同步。

Repcached介紹

repcached:全稱 replication cached是由日本人發明的memcached的高可用性技術,簡稱複製緩衝區技術。


使用場景:它是一個單master單 slave的方案,但它的 master/slave都是可讀寫的,而且可以相互同步,如果 master 宕機, slave偵測到連接斷了,它會自動 listen而成爲 master;而如果 slave壞掉, master也會偵測到連接斷,它就會重新 listen等待新的 slave加入;

部署環境

系統:centos 6.6 x64

測試環境採用2magent 2個主memcache 一個備份memcache 

角色 Ip地址 部署軟件

Magent01 10.150.21.66(主) magent

Magent02 10.150.21.78(備) magent

Memcache01 10.150.21.67(主) Memcache-1.4.10, repcached-2.3.1-1.4.10.patch

Memcache02 10.150.21.68(主) Memcache-1.4.10, repcached-2.3.1-1.4.10.patch

Memcache03 10.150.21.69(備) Memcache-1.4.10,

repcached-2.3.1-1.4.10.patch

安裝步驟

Magent安裝配置省略。。。。。

在Memcache01 ,Memcache02,Memcache03節點上操作

tar zxvf memcached-1.4.10.tar.gz 

cd memcached-1.4.10

gzip -cd ../repcached-2.3.1-1.4.10.patch.gz | patch -p1

./configure --enable-replication 

make 

make install

服務啓動

Memcache01

/usr/local/bin/memcached -d -m 1024 -p 11211 -u root -c 1024  -x 10.150.21.68 -X 11212

Memcache02

/usr/local/bin/memcached -d -m 1024 -p 11211 -u root  -c 1024  -x 10.150.21.67 -X 11212

Memcache03

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

Magent01

magent -u root -n 51200 -l 10.150.21.66 -p 12000 -s 10.150.21.67:11211 -s  10.150.21.68:11211 -b 10.150.21.69:11211

magent02

magent -u root -n 51200 -l 10.150.21.78 -p 12000 -s 10.150.21.67:11211 -s  10.150.21.68:11211 -b 10.150.21.69:11211

至此ok


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章