之前介绍过用Tomcat自身的Cluster做集群。还有一种方式是通过memcached保存session,实现多台tomcat共享session。开源项目memcached-session-manager实现了这个功能。
一、首先需要安装memcached。
安装步骤请参考:http://blog.csdn.net/clarkcc1988/article/details/8509822
上面这篇文章写的很好,在这里就不重复了。
补充几点官方文档中的信息:(官方文档链接:https://code.google.com/p/memcached/wiki/NewStart?tm=6)
- 启动参数
-h:获得帮助信息
注意-m,-d,-v
-m:告诉memcached用多少内存做存储(单位M)。注意memcached会使用比你设定的数量更多一些的内存,所以要设定安全的数量。在1.4.x版本及以前的版本,不管你设定多少,memcached使用的内存都不会少于48M。
常用启动命令:/usr/local/memcached/bin/memcached -d -m 256 -u root -p 11211 -c 1024
- 连接限制:
默认最大连接数是1024。在系统运行时,你可以执行命令echo "stats" | nc localhost 11211
检查"listen_disabled_num",如果数值比0大,加大连接数的设置,让这个数值等于或近似于0即可。
- 线程
默认是4个线程。memcached每个线程都可以处理大量的请求,所以这个数值不用设置太大。除非你的memcached系统特别健壮,否则不建议增大此数量。线程数量设置大于80时将不会让系统运行更快。
- 运行中的参数
系统运行时,执行命令:$ echo "stats settings" | nc localhost 11211
可以查看系统运行的状态参数。('stats'和'stats settings')
二、memcached客户端(选读)
程序通过memcached客户端操作memcached。JAVA客户端有很多,比较好的有spymemcached和xmemcached。xmemcached有完整的中文文档,性能也很不错。
xmemcached中文指南:https://code.google.com/p/xmemcached/wiki/User_Guide_zh
spymemcached:https://code.google.com/p/spymemcached/
三、memcached-seession-manager
参考这篇文章:http://chenzhou123520.iteye.com/blog/1650212
上面的文章基本是翻译官方文档,写的很清楚了,不再重复。
官方文档:https://code.google.com/p/memcached-session-manager/wiki/SetupAndConfiguration
需要补充的几点:
1、Context的设置可以是针对单个web应用,也可以针对整个Tomcat环境。配置的地方不同,但是不建议在server.xml中添加,因为这样要应用修改必须重启Tomcat。参考:http://tomcat.apache.org/tomcat-7.0-doc/config/context.html#Defining_a_context
2、如果你的tomcat在同一个机器上,需要设置jvmRoute,并且保证在同一台机器上的唯一,如:<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">
相关推荐
包含对于Memcached-Session-Manager配置的五种Tomcat集群session共享机制和策略 jar包及文档
tomcat8+memcached session共享所需的jar包, memcached-session-manager memcached-session-manager-tc8 msm-kryo-serializer spymemcached kryo-serializers所有jar包都有
memcached-session-manager(MSM) Tomcat集群session共享示例
Nginx+Tomcat+Memcached-Session-Manager整合做集群实现Session共享,实战操作,亲测可用。本文档仅供交流学习使用,欢迎大家批评指正。
最新memcached-session-manager1.8(MSM),Tomcat+Memcached集群Jar包
配置msm所需的jar包,全部都有,javolution和kryo,欢迎大家下载学习
MSM--memcached session manager是一个高可用的Tomcat session共享解决方案,除了可以从本机内存快速读取Session信息(仅针对黏性Session)外,同时可使用memcached存取Session,以实现高可用。
Nginx+Tomcat7+Memcached集群Session共享 ...主要是利用memcached-session-manager(下面简称msm)开源tomcat插件改变tomcat原始的session存储机制,将session的存储放到分布式缓存memcache中,从而实现对session的共享
2)Tomcat6和Tomcat7使用不同msm支持包:memcached-session-manager-tc6-1.6.5.jar和memcached-session-manager-tc7-1.6.5.jar,只可选一,否则启动报错。 3)msm源码中的lib包版本太低:spymemcached需要使用...
couchbase-client-1.2.2.jar ...memcached-session-manager-1.6.5.jar memcached-session-manager-tc6-1.6.5.jar minlog-1.2.jar msm-kryo-serializer-1.6.5.jar reflectasm-0.9.jar spymemcached-2.10.2.jar
memcached-session-manager-1.6.3.jar memcached-session-manager-tc6-1.6.3.jar minlog-1.2.jar msm-javolution-serializer-1.6.3.jar msm-kryo-serializer-1.6.3.jar msm-xstream-serializer-1.6.3.jar reflectasm...
couchbase-client-1.2.2.jar javolution-5.4.3.1.jar kryo-1.03.jar kryo-serializers-0.10.jar memcached-session-manager-1.6.5.jar memcached-session-manager-tc6-1.6.5....Nginx+Tomcat+Memcached集群 收集,共享
couchbase-client-1.2.2.jar、javolution-5.4.3.1.jar、kryo-1.03.jar、kryo-serializers-0.10.jar、memcached-session-manager-1.6.5.jar、memcached-session-manager-tc7-1.6.5.jar、minlog-1.2.jar、msm-kryo-...
里面包括所有的包 ...memcached-session-manager-1.5.1.jar memcached-session-manager-tc7-1.5.1.jar msm-javolution-serializer-1.5.1.jar msm-kryo-serializer-1.5.1.jar msm-xstream-serializer-1.5.1.jar
1.Ngnix 下载 ...黄海下载的是: ... 2.Tomcat 下载 http://tomcat.apache.org 本例使用的是6.0.35版本的tomcat ...本例中使用memcached-session-manager 的插件进行session 的同步管理。 http://code.google.com/p/m
memcached-session-manager-1.6.5.jar memcached-session-manager-tc7-1.6.5.jar msm-javolution-serializer-1.6.5.jar msm-kryo-serializer-1.6.5.jar msm-xstream-serializer-1.6.5.jar reflectasm-1.09.jar ...
memcached session manager tomcat集群 共享session
MSM集群搭建所需jar包,将memcached-session-manager jar添加到tomcat
(2) session cluster:delta session manager 基于tomcat集群会话保持 分析:tomcat自身带的机制 session cluster,基于组播的方式,一个tomcat 被用户登录访问,记录session;通过组播给集群中的其他机器复制一份...
jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,功能强大和优雅的PEG...