`
henghengdh
  • 浏览: 157455 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

tomcat6session复制

阅读更多
说明:此配置针对一个ip下多个tomcat之间的session同步。
步骤:
修改应用1中server.xml中的
<Engine name="Catalina" defaultHost="localhost"  jvmRoute="tomcat1" >
,修改应用2中server.xml中的
<Engine name="Catalina" defaultHost="localhost"  jvmRoute="tomcat2" >
,注意jvmRoute不能相同
在server.xml中添加如下代码
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="8">  
          <Manager className="org.apache.catalina.ha.session.DeltaManager"  
                   expireSessionsOnShutdown="false"  
                   notifyListenersOnReplication="true"/>  
          <Channel className="org.apache.catalina.tribes.group.GroupChannel">  
            <Membership className="org.apache.catalina.tribes.membership.McastService"  
                        address="228.0.0.4"  
                        port="45564"  
                        frequency="500"  
                        dropTime="3000"/>  
            <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"  
                      address="192.168.7.153"  
                      port="4000"  
                      autoBind="100"  
                      selectorTimeout="5000"  
                      maxThreads="6"/>  
            <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">  
              <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>  
            </Sender>  
            <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>  
            <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>  
          </Channel>  
          <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"  
                 filter=""/>  
          <Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>  
          <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"  
                    tempDir="/tmp/war-temp/"  
                    deployDir="/tmp/war-deploy/"  
                    watchDir="/tmp/war-listen/"  
                    watchEnabled="false"/>  
          <ClusterListener className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>  
          <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>  
        </Cluster>  

  注意receiver节点下的port 端口,两个tomcat端口不能相同 ,如果有多网卡或者虚拟网卡需要在membership中添加mcastBindAddress="127.0.0.1" 。
  将两个tomcat里面的Server,Connector,Connector AJP端口改为不一样的。
  将两个tomcat里面的web.xml文件</web-app>标签前面加上<distributable/> ,表示Tomcat要为此web应用复制 Session。
  应用中存入session的对象需要实现Serializable,意为可序列化的。
分享到:
评论

相关推荐

    tomcat5 session 复制

    【Tomcat5 Session 复制详解】 在分布式环境中,保持用户会话(Session)的一致性是至关重要的。Tomcat5 提供了集群(Cluster)功能来实现 Session 的复制,确保用户在不同服务器间的会话状态能够无缝切换。以下是...

    tomcat集群实现session复制

    在IT领域,特别是Web应用服务器的管理与优化中,Tomcat集群实现Session复制是一个关键的技术点,它确保了高可用性和负载均衡,特别是在处理大量并发请求的场景下。本文将深入探讨这一主题,涵盖其原理、配置方法以及...

    tomcat cluster 集群 session复制

    而实际情况下,采取Apache 加Tomcat进行负载均衡集群的时候,是可以不用将Session复制到所有的节点里, 比如有六个Tomcat实例 Tomcat1,Tomcat2,Tomcat3,Tomcat4,Tomcat5,Tomcat6 是可以配置成 三组互相复制...

    tomcat redis session.rar

    7. **优点**:使用Redis同步Session可以避免Session复制带来的网络开销,提高响应速度,同时增强了系统的可扩展性和可用性。 8. **挑战与注意事项**:需要注意Redis的高可用性(如主从复制、哨兵系统或Cluster),...

    一台xp机器实现apache+tomcat session复制.docx

    **Session复制**是通过JK模块在Apache和Tomcat之间传递Session信息,使得用户在集群中的不同Tomcat服务器之间切换时,仍能保持登录状态和其他会话信息。这通常需要在`workers.properties`文件中进行详细配置,并且在...

    nginx tomcat集群 session复制

    【Nginx Tomcat集群与Session复制】 在高并发、高可用的Web应用环境中,使用Nginx作为负载均衡器,结合Tomcat集群是常见的架构选择。为了保证用户体验的连续性,Session复制技术用于在多个Tomcat实例之间共享用户...

    tomcat6 memcache session manager session共享 jar包下载

    标题中的“tomcat6 memcache session manager session共享 jar包下载”揭示了这个压缩包与Tomcat6服务器有关,特别地,它涉及到一个基于Memcache的Session管理器,用于实现跨多个应用服务器的Session共享。Session在...

    tomcat8+memcached session共享

    标题中的“tomcat8+memcached session共享”指的是在Tomcat 8服务器中利用Memcached进行session共享的技术实践。在分布式系统中,session共享是一个重要的问题,因为用户在访问不同的服务器节点时,需要保持登录状态...

    linux下用memcache做tomcat集群session复制

    在Linux环境下,使用Memcached实现Tomcat集群的session复制是一个常见的解决方案,以提高应用的可扩展性和高可用性。Memcached是一种分布式内存对象缓存系统,它可以存储包括session在内的临时数据,使得多个服务器...

    Tomcat memcached Session依赖jar包

    在Tomcat中集成memcached作为Session管理器,可以将Session数据分布在网络中的多个节点上,实现Session复制和高可用性。 为了在Tomcat中使用memcached进行Session管理,你需要以下关键的依赖jar包: 1. **...

    tomcat6+session+memcached

    4. **Session复制**:利用Memcached作为Session复制的中间件,将服务器端的Session数据实时同步到Memcached,实现Session的跨服务器共享。 5. **依赖库**: - `kryo-1.03.jar` 和 `kryo-serializers-0.11.jar`: ...

    tomcat集群session共享

    2. **选择session复制策略**:Tomcat提供了几种session复制策略,包括基于内存的复制和基于JDBC的复制。在这个场景下,我们将采用基于第三方存储的策略,即使用`org.apache.catalina.session.PersistentManagerBase`...

    apache tomcat 集群 负责均衡 session复制

    NULL 博文链接:https://xueweiabcok.iteye.com/blog/1841448

    tomcat集群session共享解决方案

    通过配置Tomcat的`cluster`模块,可以设置session复制策略。每当一个session在某个实例上更新时,这个更新会被广播到集群中的其他实例。这种方式简单易用,但随着节点数量增加,网络带宽消耗和性能开销也会增大,且...

    tomcat8实现session共享jar包

    此压缩包为tomcat8利用redis实现session共享所需要的jar包,包含(commons-pool2-2.6.0.jar、jedis-2.9.0.jar、tomcat-redis-session-manager.jar)直接将三个jar包复制Tomcat目录lib下面,在修改conf下context.xml...

    tomcat-session共享

    - 可以设置Session复制策略,例如只有在更新Session时才写入Redis,以减少网络开销。 总结来说,实现“tomcat-session共享”涉及到对Nginx负载均衡策略的理解,以及如何利用Redis这样的外部存储来实现跨服务器的...

    redis-session-manager-tomcat6共享包

    1. 下载并添加到Tomcat的lib目录:首先,你需要下载这个压缩包,并将其中的JAR文件复制到Tomcat的lib目录,使得Tomcat启动时能加载这个新的session管理器。 2. 配置上下文参数:在Tomcat的server.xml或对应的...

    tomcat 做session共享所需jar包压

    在分布式系统中,Session共享是一个常见的需求,尤其是在多个Tomcat服务器之间。这通常是由于负载均衡、高可用性或扩展性的需要。"Tomcat做session共享所需jar包"指的是实现这一功能所需的Java档案(JAR)文件。在这...

    session 共享 tomcat-redis-session-manager 所需要的jar (绝对可用)

    这样可以解决负载均衡下Session粘滞或者复制导致的问题,提高系统的可扩展性。 接下来,我们关注描述中提到的组件:"jedis-2.5.2.jar"、"commons-pool2-2.0.jar"、"tomcat-cluster-redis-session-manager-3.0.jar...

Global site tag (gtag.js) - Google Analytics