Memcache 高可用集群之repcached

repcached是日本人开发的基于Memcached的一个patch版本,实现Memcached的复制功能,它支持多个Memcached之间相互复制,可以解决Memcached的容灾问题。它所构建的主从方案是一个单主单从的方案,不支持多主多从。但是,它的特点是,主从两个节点可以互相读写,从而可以达到互相同步的效果。如果 master坏掉, slave侦测到连接断了,它会自动listen而成为master;而如果 slave坏掉,master也会侦测到连接断,它就会重新listen等待新的slave加入。但down机的master只能手动以slave启动,他们之间互换角色,才能保持复制功能。换句话说,master没有抢占功能。 
官网: http://repcached.lab.klab.org/
项目地址: http://sourceforge.net/p/repcached
下载地址: http://sourceforge.net/projects/repcached/files/repcached/2.2.1-1.2.8/
一、下载安装
1)下载安装libevent,略请参考: http://blog.csdn.net/zhu_tianwei/article/details/44542497
建议安装低版本的,高版本会有问题。
wget  http://www.monkey.org/~provos/libevent-1.4.13-stable.tar.gz  或yum -y install libevent*,建议使用yum
2)下载最新版本memcached-1.2.8-repcached-2.2.1已经包含memcached,最新版本只支持到memcached-1.2.8
tar -zxvf memcached-1.2.8-repcached-2.2.1.tar.gz
3)安装
mkdir memcached
cd memcached-1.2.8-repcached-2.2.1
./configure --prefix=/home/slim/memcached  --with-libevent=/home/slim/libevent --enable-replication  #--enable-replication开启复制
make
make install
除了以上安装方式,也可以通过安装补丁完成,如下:
1)安装libevent略(libevent-1.4.13-stable.tar.gz或yum -y install libevent*,建议使用yum)
2)下载repcached补丁
3)安装memcached,这里根据补丁版本,安装1.2.8的memcached
mkdir memcached
cd memcached-1.2.8
gzip -cd ~/repcached-2.2.1-1.2.8.patch.gz | patch -p1
./configure --prefix=/home/slim/memcached  --with-libevent=/home/slim/libevent --enable-replication
make
make install
二、启动服务
启动主节点mater:
./bin/memcached -l 192.168.36.54 -p 11211 -v
#replication: listen
启动从节点slave
./bin/memcached -v -l 192.168.36.189 -p 11211  -x 192.168.36.54 -X 11212
#replication: connect (peer=192.168.36.54:11212)
#replication: marugoto copying
#replication: start
参数说明:
x 监听主服务器地址
X 监听主服务器端口  默认11211
三、测试
1.查看从服务器同步主服务器
192.168.36.54(master):
set data 0 0 3
abc
192.168.36.189(slave):
get data
可以看到数据已经同步
2.查看主服务器同步从服务器
192.168.36.189(slave):
set  key 0 0 5
value
192.168.36.54(master):
get key
3.关闭主服务器
ctrl+c关闭192.168.36.54(master),此时192.168.36.189(slave)变成192.168.36.189(master),处于监听状态
在原来192.168.36.189(master)添加数据:
set mm 0 0 2
ab
启动192.168.36.54,由于memcached的主/从没有抢占功能,因此主恢复之后,只能作为现有主节点的从节。
./bin/memcached -v -l 192.168.36.54 -p 11211 -x 192.168.36.189 -X 11211 
在192.168.36.54(slave)
get mm
通过memcached基于repcached的主从复制实验,我们可以看出,通过他我们实现了主从中任何一个宕机,都不会影响另外一台机器上的数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值