步骤一:下载工具。在我的网盘 Nginx+Tomcat+Memcached集群Session共享 文件夹下
步骤二:安装memcached
cmd命令行下进入memcached解压后所在目录 (D:\memcached\)
输入D:\memcached\memcached.exe -d install ,安装完以后
启动memcached的服务:输入 "D:\memcached\memcached.exe -d start" 启动服务
这样memcached就成为windows服务了。
如果需要关闭memcached的服务,则输入:
D:\memcached\memcached.exe -d stop|shutdown 进行关闭。
设置memcached,启动该服务后,memcached服务默认占用的端口是11211,占用的最大内存默认是64M。
如果需要修改这两个参数,比如修改端口为10000,内存为512,则输入:
D:\memcached\memcached -p 10000 -m 512 -d start , -p 表示要修改的端口, -m表示占用的最大内存(单位为M)。
memcached常用命令
telnet到memcache服务器,如:telnet telnet 127.0.0.1 11211(11211是memcache的默认端口)
2.stats 查看基本信息
3.stats items 查看items
4.get key(key 为 item后面的字符串即键)
5.-c 最大同时连接数,默认是1024
6.-f 块大小增长因子,默认是1.25
7.-n 最小分配空间,key+value+flags默认是48
8.-h 显示帮助
步骤三:配置tomcat
修改配置文件context.xml
加入
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:localhost:11211"
requestUriIgnorePattern=".*/.(png|gif|jpg|css|js)$"
sessionBackupAsync="false"
sessionBackupTimeout="100"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory"
copyCollectionsForSerialization="false"
/>
这里的memcachedNodes是填写memcached节点,多个节点时可以以空隔分开,如:
n1:localhost:11211 n2:localhost:11212
sessionBackupTimeout的单位为分钟
步骤四:安装配置Nginx
参见 负载均衡
步骤四:测试
测试Nginx和Tomcat
测试Nginx是否实现负载均衡已经Tomcat能否共享session信息,分别在两个Tomcat服务器的/var/www/html目录下新建两个test.jsp页面
Tomcat1
test.jsp /输入如下内容
SessionID:<%=session.getId()%>
<BR>
SessionIP:<%=request.getServerName()%>
<BR>
SessionPort:<%=request.getServerPort()%>
<%
out.println("This is Tomcat Server 111111!");
%>
Tomcat2
test.jsp /输入如下内容
SessionID:<%=session.getId()%>
<BR>
SessionIP:<%=request.getServerName()%>
<BR>
SessionPort:<%=request.getServerPort()%>
<%
out.println("This is Tomcat Server 222222!");
%>
通过浏览器访问Nginx服务器,如下图将访问地址改成Nginx所在服务器。
反复刷新浏览器,如果SessionID一直不变,下面的SessionPort的内容在不断变化则说明配置成功。