客户端:192.168.1.2
nginx:192.168.1.1、192.168.2.1
tomcat1:192.168.2.10(运行memcached主+session)
tomcat2:192.168.2.20(运行memcached备+session)
nginx:
# wget nginx-1.10.1.tar.gz
# tar -zxf nginx-1.10.1.tar.gz
# cd nginx-1.10.1
# groupadd www
# useradd -g www www
# yum -y install openssl openssl-devel pcre
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --without-http_rewrite_module --with-http_ssl_module && make && make install
# cat /usr/local/nginx/conf/nginx.conf
http {
upstream "tomcatgrp" {
server 192.168.2.10:8080;
server 192.168.2.20:8080;
}
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://tomcatgrp;
}
}
}
tomcat1:
安装tomcat1
# wget apache-tomcat-6.0.32.tar.gz
# tar -zxf apache-tomcat-6.0.32.tar.gz
# mv apache-tomcat /usr/local/tomcat
修改/usr/local/tomcat/webapps/ROOT/index.jsp
# cat /usr/local/tomcat/webapps/ROOT/index.jsp
<html>
<body bgcolor="yellow">
<center>
<%= request.getSession().getId() %>
<h1>tomcatB 192.168.2.10</h1>
</center>
</body>
</html>
安装memcached
# wget libevent-2.0.15-stable.tar.gz
# tar -zxf libevent-2.0.15-stable.tar.gz
# cd libevent-2.0.15-stable
# ./configure && make && make install
# wget memcached-1.4.5.tar.gz
# tar -zxf memcached-1.4.5.tar.gz
# cd memcached-1.4.5
# ./configure && make && make install
# find / -name "libevent-2.0.so.5"
# /memcached+session-package/libevent-2.0.15-stable/.libs/libevent-2.0.so.5
# /usr/local/lib/libevent-2.0.so.5
# echo /usr/local/lib/ > /etc/ld.so.conf.d/libevent.conf
# ldconfig -v
配置tomcat把session_id保存在memcached
在tomcat安装链接mamcached的链接工具
# cp /session/*.jar /usr/local/tomcat/lib/
修改tomcat配置文件,链接指定的memcached服务器
<Context>
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="memA:192.168.2.10:11211 memB:192.168.2.20:11211"
failoverNodes="memA"
requestUrilgnorePattern=".*\(ico|png|gif|jpg|css|js)$"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
/>
tomcat2:
安装tomcat2
# wget apache-tomcat-6.0.32.tar.gz
# tar -zxf apache-tomcat-6.0.32.tar.gz
# mv apache-tomcat /usr/local/tomcat
修改/usr/local/tomcat/webapps/ROOT/index.jsp
# cat /usr/local/tomcat/webapps/ROOT/index.jsp
<html>
<body bgcolor="green">
<center>
<%= request.getSession().getId() %>
<h1>tomcatB 192.168.2.20</h1>
</center>
</body>
</html>
安装memcached
# wget libevent-2.0.15-stable.tar.gz
# tar -zxf libevent-2.0.15-stable.tar.gz
# cd libevent-2.0.15-stable
# ./configure && make && make install
# wget memcached-1.4.5.tar.gz
# tar -zxf memcached-1.4.5.tar.gz
# cd memcached-1.4.5
# ./configure && make && make install
# find / -name "libevent-2.0.so.5"
# /memcached+session-package/libevent-2.0.15-stable/.libs/libevent-2.0.so.5
# /usr/local/lib/libevent-2.0.so.5
# echo /usr/local/lib/ > /etc/ld.so.conf.d/libevent.conf
# ldconfig -v
配置tomcat把session_id保存在memcached
在tomcat安装链接mamcached的链接工具
# cp /session/*.jar /usr/local/tomcat/lib/
修改tomcat配置文件,链接指定的memcached服务器
<Context>
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="memA:192.168.2.10:11211 memB:192.168.2.20:11211"
failoverNodes="memA"
requestUrilgnorePattern=".*\(ico|png|gif|jpg|css|js)$"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
/>
在nginx服务器启动nginx服务
# /usr/local/nginx/sbin/nginx
在tomcat1和2服务器分别启动服务
# /usr/local/bin/memcached -u root -m 200M -n 10 -f 2 -d
# /usr/local/tomcat/bin/startup.sh
客户端测试:在客户端访问nginx服务器,页面在变,session_id不变。
本文出自 “linux” 博客,请务必保留此出处http://105496232.blog.51cto.com/3895811/1896708
原文:http://105496232.blog.51cto.com/3895811/1896708