`
零点5度
  • 浏览: 19216 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Nginx+Tomcat+memcached负载均衡实现session共享

 
阅读更多

Memcached是一个高性能的分布式内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,Memcached能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。

一、安装memcached:

网上有很多安装教程,在此不重复,注意的是我当时在win8上需要以管理员身份运行安装包才有效。

二、 MSM相关的jar包:

javolution-5.4.3.1.jar <wbr><span style="font-size:14px"><br></span></wbr>
memcached-2.4.2.jar <wbr><span style="font-size:14px"> </span><wbr></wbr></wbr>
memcached-session-manager-1.5.1.jar <wbr></wbr>
memcached-session-manager-tc6-1.5.1.jar <wbr></wbr>
msm-javolution-serializer-1.5.1.jar <wbr></wbr>
msm-kryo-serializer-1.5.1.jar
msm-xstream-serializer-1.5.1.jar

其中memcached-session-manager-tc6-1.5.1.jar 中的tc6是对应tomcat 6,所以要根据使用的tomcat的版本下载对应的jar。

 

三、配置Session共享

1、将上面所述的MSM的jar包拷贝至Tomcat安装目录lib文件夹中;
2、编辑context.xml

 

 

  1. <ManagerclassName="de.javakaffee.web.msm.MemcachedBackupSessionManager"
  2. memcachedNodes="n1:localhost:11211"
  3. requestUriIgnorePattern=".*/.(png|gif|jpg|css|js)$"
  4. sessionBackupAsync="false"
  5. sessionBackupTimeout="100"
  6. transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory"
  7. copyCollectionsForSerialization="false"
  8. />

3、服务端sessionid失效时间可设置,默认30分钟后失效(没验证)。

 

另外网上有人说:上面是采用Non-sticky Session方式,而下面的在server.xml中配置是 通过Memcached实现了Sticky Session(粘性Session),主要是通过配置failover结点来达到目的方式。

未考虑,暂时写在这里:

 

  1. <Hostname="localhost"appBase="webapps"unpackWARs="true"autoDeploy="true"deployOnStartup="true">
  2. <ContextdocBase="/home/shirdrn/servers/cluster/nginx_tomcat_memcached/webapps/session.war"path="/session"reloadable="true">
  3. <ManagerclassName="de.javakaffee.web.msm.MemcachedBackupSessionManager"
  4. memcachedNodes="n1:192.168.1.104:11211"
  5. failoverNodes="n2"
  6. requestUriIgnorePattern=".*\.(png|gif|jpg|css|js)$"
  7. sessionBackupAsync="false"
  8. sessionBackupTimeout="100"
  9. transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory"
  10. copyCollectionsForSerialization="false"/>
  11. </Context>
  12. </Host>

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics