近期业务需要,需要调整下memcached的缓存模式,结合公司应用测试过magent以及repcached的方式,结果显示repcached的方式比较适合公司的业务,如是,有了今天的文章。
1、测试环境
CentOS6.5_X64两台,分别为repcached的两个节点,然后在这两台节点分别部署memcached+tomcat+repcached以及公司的特殊应用。
2、操作过程
a)上传安装包
|
1
2
3
4
|
libevent-2.0.21-stable.
tar
.gz
memcached-1.4.13.
tar
.gz
repcached-2.3.1-1.4.13.patch.gz
说明:repcached内存复制插件版本一定要和memcached版本一致,否则会出现版本不兼容等各种错误
|
b)安装依赖关系(根据自己系统实际情况进行)
|
1
|
yum -y
install
install
g++
make
popt-devel
|
c)安装libevent(两台节点上都要操作)
|
1
2
3
4
5
|
# cd /www/test
# tar zxvf libevent-2.0.21-stable.tar.gz
# cd libevent-2.0.21-stable
# ./configure --prefix=/usr
# make && make install
|
d)memcached安装及补丁包安装:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# cd /www/b2b
# gzip -d repcached-2.3.1-1.4.13.patch.gz
# tar -xf memcached-1.4.13.tar.gz
# cd memcached-1.4.13
# patch -p1 -i ../repcached-2.3.1-1.4.13.patch
# ./configure --prefix=/www/test/memcached-repcached --with-libevent=/usr --enable-replication
# make && make install
# echo $?
添加memcached自启动脚本,存放在
/etc/init
.d
/memcached-repcached
#!/bin/bash
#
start() {
/www/test/memcached-repcached/bin/memcached
-d -m 512 -u root -p 11211 -c 4096 -t 8 -P
/var/run/repcached
.pid
}
stop() {
kill
`
cat
/var/run/repcached
.pid`
}
# See how we were called.
case
"$1"
in
start)
start
;;
stop)
stop
;;
restart|reload)
stop
start
;;
esac
cd
/etc/rc3
.d/
ln
-s
/etc/init
.d
/memcached-repcached
S98memcached-repcached
|
e)在主节点上开启repcached
|
1
2
|
/www/test/memcached-repcached/bin/memcached
-
v
-d -p 11213 -l 10.10.10.53 -u root -P
/var/run/repcached
.pid
|
f)在从节点上开启repcached
|
1
2
|
/www/test/memcached-repcached/bin/memcached
-
v
-d -p 11213 -l 10.10.10.54 -u root -x
10.10.10.53 -P
/var/run/repcached
.pid
|
g)备份tomcat配置memcached相关的配置文件:
|
1
2
|
cp
-a
/www/test/tomcat_1/conf/context
.xml
/tmp
cp
-a
/www/test/tomcat_1/webapps/ROOT/WEB-INF/configs/application-context
.xml
/tmp
|
h)修改tomcat配置文件
|
1
2
3
4
5
6
|
-->修改tomcat配置文件(
/www/test/tomcat_1/conf/context
.xml):
将“memcachedNodes=
"n1:10.10.10.53:11211 n2:10.10.10.54:11211"
”修改为
“memcachedNodes="n1:10.10.10.53:11213 n2:10.10.10.54:11213”
-->修改tomcat配置文件(
/www/test/tomcat_1/webapps/ROOT/WEB-INF/configs/application-context
.xml)
将“<property name=
"servers"
value=
"10.10.10.53:11212,10.10.10.54:11212"
/>”修改为
“<property name=
"servers"
value=
"10.10.10.53:11213,10.10.10.54:11213"
/>”
|
i)重启tomcat服务,然后使用telnet在两台服务器的端口上进行同步写操作
本文转自 冰冻vs西瓜 51CTO博客,原文链接:http://blog.51cto.com/molewan/1959828,如需转载请自行联系原作者