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

来源:互联网 发布:js 时分秒 时间选择器 编辑:程序博客网 时间:2024/05/17 02:10

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

      一、  安装memcached:

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

      二、  MSM相关的jar包:

        javolution-5.4.3.1.jar  
        memcached-2.4.2.jar    
        memcached-session-manager-1.5.1.jar  
        memcached-session-manager-tc6-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
        其中memcached-session-manager-tc6-1.5.1.jar  中的tc6是对应tomcat 6,所以要根据使用的tomcat的版本下载对应的jar。

      三、配置Session共享

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

  1. <Manager className="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.  <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" deployOnStartup="true">  
  2.                     <Context docBase="/home/shirdrn/servers/cluster/nginx_tomcat_memcached/webapps/session.war" path="/session" reloadable="true">  
  3.                          <Manager className="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> 

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 小脚趾上长鸡眼怎么办 6岁宝宝不爱学习怎么办 上班站久了腿肿怎么办 站时间长了腿肿怎么办 孩子做作业老是粗心大意怎么办 高中孩子没学习兴趣怎么办 初三孩子失去学习兴趣怎么办 初二对学习兴趣不大怎么办 脸上痒发红发肿怎么办 孩子作业拖拉爱丢三落四怎么办 腿肌肉按摩肿了怎么办 孩子上一年级成绩差怎么办 小孩脖子拧筋了怎么办 小孩塑料玩具拧不出来怎么办 一年级孩子做数学题粗心怎么办 手和脚有点肿怎么办 手破了之后肿了怎么办 手指肿了有脓怎么办 宝宝手指红肿有脓怎么办 孩子一听做作业就烦气怎么办 虎皮鹦鹉脚瘸了怎么办 虎皮鹦鹉脚受伤了怎么办 虎皮鹦鹉脚流血了怎么办 虎皮鹦鹉被风扇打到脚怎么办 虎皮鹦鹉脚脱臼了怎么办 孩子作业做得慢怎么办 员工给公司造成损失怎么办 小孩有写不完的作业家长怎么办 一年级孩子作业太粗心怎么办 孩子最近不好好做作业怎么办 工作压力大害怕做不好怎么办 孩子的数算不对怎么办? 孩子计算老是出错怎么办呢 孩子经常计算错误能怎么办 孩子老出现计算错误怎么办 孩子做作业马虎该怎么办 黑笔写错了纸破了怎么办 幼儿园报名写错怎么办名字 中考写错了字怎么办 头发没干想睡觉怎么办 突然天旋地转恶心想吐怎么办