1. 安装memcached
1.1 安装libevent
memcached依赖libevent,libevent官网:http://libevent.org/
检查看是否已安装libevent:
rpm -qa | grep libevent
如果已装版本低于1.3,卸载:
sudo rpm -e libevent --nodeps
安装:
tar zxvf libevent-2.0.21-stable.tar.gz
cd libevent-2.0.21-stable
sudo ./configure --prefix=/usr/local/libevent-2.0.21-stable
sudo make
sudo make install
1.2 安装memcached
tar zxvf memcached-1.4.21.tar.gz
cd memcached-1.4.21
sudo ./configure --prefix=/usr/local/memcached-1.4.21 --with-libevent=/usr/local/libevent-2.0.21-stable
sudo make
sudo make install
2. 启动memcached
cd /usr/local/memcached-1.4.21/bin
sudo ./memcached -d -v -p 11211 -m 512 -u haijian
-d:以守护进程方式运行memcached;
-v:表示输出错误信息;
-p:指定监听的端口号,默认值:11211;
-m:指定能使用的最大内存,单位M,默认64M;
-u:指定运行memcached的账户
打开防火墙端口:
sudo vi /etc/sysconfig/iptables
添加:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 11211 -j ACCEPT
sudo service iptables restart
2. nginx配置
添加:
upstream back-server {
server 192.168.1.96:8080;
server 192.168.1.97:8080;
}
...
server {
...
location / {
...
添加:
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_pass http://back-server;
}
3. memcached-session-manager
http://blog.youkuaiyun.com/zht666/article/details/38515147
4. tomcat配置
编辑server.xml,Engine节点添加:jvmRoute。分别设置值为:jvm1和jvm2.
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
添加:
<Context path="" docBase="/demo/appserver/app/cluster" debug="0" reloadable="true" crossContext="true">
<Manager
className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:192.168.1.96:11211"
requestUriIgnorePattern=".*\.(png|gif|jpg|css|js|ico|jpeg|htm|html)$"
sessionBackupAsync="false"
sessionBackupTimeout="1800000"
copyCollectionsForSerialization="false"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory" />
</Context>