repcached實現(xiàn)memcached的復(fù)制功能:
repcached是日本人開發(fā)的實現(xiàn)memcached復(fù)制功能,它是一個單 master單 slave的方案,但它的 master/slave都是可讀寫的,而且可以相互同步,如果 master壞掉, slave偵測到連接斷了,它會自動 listen而成為 master;而如果 slave壞掉, master也會偵測到連接斷,它就會重新 listen等待新的 slave加入
安裝:
先安裝memcached(我安裝的1.2.8)
有兩種方式:
方式一、下載對應(yīng)的repcached版本
#wget http://downloads.sourceforge.net/repcached/memcached-1.2.8-repcached-2.2.tar.gz
#tar zxf memcached-1.2.8-repcached-2.2.tar.gz
#cd memcached-1.2.8-repcached-2.2
方式二、下載對應(yīng)patch版本
#wget http://downloads.sourceforge.net/repcached/repcached-2.2-1.2.8.patch.gz
#gzip -cd ../repcached-2.2-1.2.8.patch.gz | patch -p1
#./configure --enable-replication
# make
# make install
啟動:
啟動master
#memcached -v -l 192.168.50.240 -p 11211 -uroot
replication: listen (master監(jiān)聽)
啟動master
#memcached -v -l 192.168.50.240 -p 11211 -uroot
replication: listen (master監(jiān)聽)
啟動salve
#memcached -v -l 192.168.50.241 -p 11213 -uroot -x 127.0.0.1 -X 11212
replication: connect (peer=192.168.50.240:11212)
replication: marugoto copying
replication: start
#memcached -v -l 192.168.50.241 -p 11213 -uroot -x 127.0.0.1 -X 11212
replication: connect (peer=192.168.50.240:11212)
replication: marugoto copying
replication: start
啟動正常后,master將accept。測試:
操作master
#telnet 192.168.50.240 11211
#set key1 0 0 3
111
操作master
#telnet 192.168.50.240 11211
#set key1 0 0 3
111
查看slave
#telnet 192.168.50.241 11213
#get key1
#telnet 192.168.50.241 11213
#get key1
如果正常表示,配置成功
應(yīng)用:
可以實現(xiàn)cache冗余
注意:如果master down機,slave接管并成為master,這時down機的master只能啟用slave,他們之間互換角色,才能保持復(fù)制功能。換句話說,master沒有搶占功能。
可以實現(xiàn)cache冗余