之前介绍过用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设计的插件,使得Tomcat能够将用户的session数据存储在Memcached服务器上,实现session的分布式管理。 本文将详细介绍如何在...
"memcached-session-manager_4_tomcat8" 这个标题表明我们正在讨论一个针对Tomcat 8.0.33版本的session管理器,它使用了memcached作为持久化存储。memcached是一种分布式内存对象缓存系统,常用于减轻数据库负载,...
3. **Memcached-session-manager**:这是一个开源项目,用于在Apache Tomcat应用服务器中集成Memcached,以便将用户的会话数据存储在Memcached集群中,以实现高可用性和可扩展性。它提供了一种替代默认的基于文件或...
标题 "memcached-session-manager 实现 tomcat session共享" 指的是在分布式环境中,通过 memcached-session-manager 这个工具来实现 Tomcat 应用服务器之间的 Session 共享。Session 是 Web 应用中用于存储用户状态...
**Memcached-Session-Manager与Tomcat集群中的Session共享** 在分布式系统中,尤其是在使用了多个Tomcat实例作为Web服务器的集群环境中,确保用户会话(Session)在各个节点之间共享是至关重要的。Memcached-...
6. **故障转移和高可用性**:介绍session数据的备份和恢复策略,以及如何在memcached集群中实现session的无缝迁移,以确保服务的连续性。 7. **源码分析**:如果标签中的“源码”是指这部分,那么教程可能包含对`...
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(MSM)来构建一个集群环境,并实现Session共享。这涉及到集群搭建、分布式应用以及缓存管理等多个方面的IT知识。下面将详细展开这些...
Tomcat Cluster Redis Session Manager是一个插件,它允许Tomcat集群中的各个节点共享和同步Session信息,确保用户在集群中的任何服务器上都能保持登录状态。 集成Tomcat集群和Redis Session Manager的过程大致如下...
标题中的"memcached-session-manager-tc6-1.6.4.zip"指的是一个与Memcached相关的session管理器的Tomcat 6版本的组件,版本号为1.6.4。Memcached是一个高性能、分布式的内存对象缓存系统,用于减少数据库负载,提高...
`memcached-session-manager1.8(MSM)`就是这样一个工具,它允许Tomcat将用户的session数据透明地保存到Memcached集群中,从而实现session的高可用性和可扩展性。 【描述】"最新memcached-session-manager1.8(MSM)" ...
总结起来,Memcached_Session_Manager jar是用于Tomcat集群环境的一个解决方案,它借助Memcached作为中央会话存储,通过javolution和kryo提高序列化效率,确保在分布式环境中正确、高效地管理用户会话。使用这个组件...
首先,"memcached-session-manager-1.9.6.jar"是核心组件,它实现了将Tomcat的用户会话数据存储到Memcached中的功能。这个库提供了一种方法,使得当用户在集群中的不同服务器之间跳转时,其会话状态可以无缝地保持...
描述提到“Tomcat7 使用 memcached-session-manager-tc7-1.9.5.jar”,这表明存在一个专门为Tomcat 7设计的Memcached session管理器版本。这个jar包允许Tomcat与Memcached通信,将session数据存储在Memcached中。...
以上就是关于"apache-tomcat-7.0.47-memcached-各种序列化策略-session共享"的知识点,涵盖了Tomcat集群、Memcached的使用以及多种序列化策略的应用。通过深入理解和实践这些技术,你可以构建出高可用、高性能的Web...
MSM--memcached session manager是一个高可用的Tomcat session共享解决方案,除了可以从本机内存快速读取Session信息(仅针对黏性Session)外,同时可使用memcached存取Session,以实现高可用。
在Tomcat中,我们可以配置一个名为`MemcachedSessionManager`的Manager组件,该组件使用Memcached作为Session的持久化存储。这样,无论用户请求发送到哪个Tomcat实例,都可以从同一个Memcached集群中获取到其Session...
- **memcached-session-manager-tc6-1.6.1.jar**:这是针对Tomcat 6的session管理模块,确保在Tomcat环境中与memcached的兼容性。 - **memcached-1.4.15.zip**:这个文件本身是memcached的源代码或二进制发行包,...
8. **memcached-session-manager-tc7-1.6.5.jar**:这个jar是针对Tomcat 7的版本,提供了与Tomcat容器集成的适配器,使得在Tomcat环境中可以方便地配置和使用Memcached session管理。 9. **minlog-1.2.jar**:一个...