1. 利用memcache来保存tomcat的session会话
  2. 网上有大量的文章有写memcache在tomcat的设置方法,基本上都从一个文章里转的,把内容都搞乱了。
  3. 为此,写一篇记录一下。本文的主要目的是修正一下,部分网上有误的地方。
  4. 前提条件:
  5. 1、memcached正常工作了
  6. 2、tomcat 正常工作了。
  7. 1、安装方法及安装包
  8. javolution-5.4.3.1.jar
  9. memcached-2.4.2.jar
  10. memcached-session-manager-1.3.0.jar
  11. msm-javolution-serializer-cglib-1.3.0.jar
  12. msm-javolution-serializer-jodatime-1.3.0.jar
  13. 安装方法:  将这几个包放到/usr/local/tomcat6.0/lib里。
  14. 2、编辑tomcat的配置文件。 <这一点很重要,因为网上大多数文章都是说修改server.xml里配置;我试过但最终发现session的信息没有存入到memcache中,我意识到这可能是配置有问题。目前发现编辑context.xml这个文件,是可以立即将session丢入到memcache中的。>
  15. # vim /usr/local/tomcat6.0/conf/context.xml
  16. <Context>
  17. <!-- 在这个字段下添加以下内容,在节点入请填入你的memcached服务器ip及端口号-->
  18. <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
  19. memcachedNodes="n1:10.254.41.197:11211"
  20. requestUriIgnorePattern=".*\.(png|gif|jpg|css|js)$"
  21. sessionBackupAsync="false"
  22. sessionBackupTimeout="100"
  23. transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory"
  24. copyCollectionsForSerialization="false" />
  25. </Context>
  26. 3、如何测试?
  27. 我目前的测试方法是,通过apache的mod_jk来实现负载均衡(之前的文章里有写),并且启用tomcat之间的会话复制。
  28. 这样的结果就是,seesion ID会随着每次用户的提交而变换节点,但ID不变。
  29. 例如:
  30. ID CFC1ACAC6B0B8C27BEA76919F3A99BF8-n1.tomcat2
  31. 下次提交就会变成: <节点切换了,但是ID不变>
  32. ID CFC1ACAC6B0B8C27BEA76919F3A99BF8-n1.tomcat1
  33. 结合memcache的状态: <我之前在会话没有成功的丢到memcached这里时,cmd_set 为0 >
  34. # perl memcached-tool.pl 10.254.41.197:11211 stats
  35. cmd_get          27
  36. cmd_set          15
  37. get_hits           12
  38. # perl memcached-tool.pl 10.254.41.197:11211 stats
  39. cmd_get          31
  40. cmd_set          17
  41. get_hits           14
  42. 我想通过以上的判断,配置 是成功的!
  43. 关于tomcat的负载均衡:http://myhat.blog.51cto.com/391263/785131

转载于:https://blog.51cto.com/myhat/824159

利用memcache来保存tomcat的session会话相关推荐

  1. WCF技术剖析之五:利用ASP.NET兼容模式创建支持会话(Session)的WCF服务

    原文:WCF技术剖析之五:利用ASP.NET兼容模式创建支持会话(Session)的WCF服务 在<基于IIS的WCF服务寄宿(Hosting)实现揭秘>中,我们谈到在采用基于IIS(或者 ...

  2. [转载]web集群时利用memcache来同步session

    web集群时session同步的3种方法 在做了web集群后,你肯定会首先考虑session同步问题,因为通过负载均衡后,同一个IP访问同一个页面会被分配到不同的服务器上,如果session不同步的话 ...

  3. Tomcat+nginx+keepalived+memcached实现双VIP负载均衡及Session会话保持

    准备好tomcat 第一台 tar vxf apache-tomcat-7.0.54.tar.gz mv apache-tomcat-7.0.54 /usr/local/tomcat tar vxf ...

  4. Nginx+Tomcat实现高可用和Session会话共享

    一.简介 对于生产环境有了一定规模的tomcat集群业务来说,要实现session会话共享,比较稳妥的方式就是使用数据库持久化session.为什么要持久化session(共享session)呢?因为 ...

  5. Django源码分析5:session会话中间件分析

    django源码分析 本文环境python3.5.2,django1.10.x系列 1.这次分析django框架中的会话中间件. 2.会话保持是目前框架都支持的一个功能,因为http是无状态协议,无法 ...

  6. 状态管理之cookie使用及其限制、session会话

    # 1.什么是状态管理? 将浏览器与web服务器之间多次交互当作一个整体来处理,并且将多次交互所涉及的数据(即状态)保存下来. (cookie浏览器所涉及到的访问数据保存下来) # 2.如何进行状态管 ...

  7. redis介绍及保持session会话

    转载自:http://blog.51cto.com/cherryliang/1944361 Redis介绍 ●redis是一个key-value存储系统.和Memcached类似,它支持存储的valu ...

  8. PHP漏洞之session会话劫持

    本文主要介绍针对PHP网站Session劫持.session劫持是一种比较复杂的攻击方法.大部分互联网上的电脑多存在被攻击的危险.这是一种劫持tcp协议的方法,所以几乎所有的局域网,都存在被劫持可能. ...

  9. Shiro框架:缓存、session会话、自定义FormAuthenticationFilter、RemenberMe

    上篇的地址:https://blog.csdn.net/a745233700/article/details/81350191 一.Shiro缓存--cacheManager: 针对上一篇授权的时候频 ...

最新文章

  1. php多文件上传类源码,PHP单文件上传类或多文件上传类源码
  2. 4.MYSQL 三大范式+BC范式
  3. idea 运行jmeter源码_学会BeanShell,才敢说自己懂Jmeter
  4. mysql 8.0 创建函数_MySQL 8.0 新增特性
  5. 铁血规则:事件预订与取消预订
  6. python的excel库_Python-Excel 模块哪家强?
  7. 【ES7(2016)】Array.prototype.includes()
  8. Function spec
  9. distributed--根索引
  10. 关于DllRegisterServer的调用失败的问题解决办法 错误代码0x80040201
  11. 宏碁 Acer AS4738ZG-P622G32Mncc 驱动
  12. 在线购物系统分析类图
  13. 语言-汉语-官话-中原官话-兖菏片-菏泽方言:菏泽方言
  14. ajax的get json数据格式,jQuery / 用getJSON()方法加载JSON格式数据 - 汇智网
  15. matlab示波器图形导出,(最新整理)Matlab-simulink示波器图形保存
  16. minio对象存储单机部署并设置开机自启动及集成spring boot进行(创建删除桶)(上传下载删除文件)
  17. 【文献阅读】Commission Fee is not Enough: A Hierarchical Reinforced Framework for Portfolio Management
  18. Logistic回归-数学原理(1)机器学习实战
  19. Gson解析json字符串,并封装成ListT
  20. iPhone上Siri无法正常回应如何解决?

热门文章

  1. VMware虚拟机文件
  2. 5条简洁的JavaScript技巧
  3. 现在加入Web前端学习还有市场吗?自己是否适合学习前端
  4. clion变量配置_cygwin安装和clion配置
  5. php 类自动执行,php类中的魔术方法及类的自动加载
  6. 请求参数 统一 管理 java_Retrofit+Rxjava+okhttp基本操作和统一处理 – R...
  7. Keras 中的循环神经网络 (RNN)
  8. linux 重定位arm,Arm linxu启动过程分析(一)
  9. 卸载jlink驱动出现Could not open INSTALL.LOG file错误解决方案
  10. SpringBoot中yaml配置