文档章节

利用memcache来保存tomcat的session会话

s
 start0cheng
发布于 2015/02/09 23:12
字数 499
阅读 23
收藏 0

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

 

本文出自 “潜入技术的海洋” 博客,请务必保留此出处http://myhat.blog.51cto.com/391263/824159

本文转载自:http://myhat.blog.51cto.com/391263/824159

s
粉丝 3
博文 260
码字总数 0
作品 0
广州
私信 提问
tomcat 之 tomcat实例配置

1 概述 本文通过例子,介绍LNMT和LAMT,结合例子介绍如何实现如下的功能 (1) nginx + tomcat cluster, httpd(proxyhttpmodule)+tomcat cluster, httpd(proxyajpmodule)+tomcat cluster; (2...

ghbSunny
2017/11/16
0
0
负载均衡集群中的session解决方案

前言 在我们给Web站点使用负载均衡之后,必须面临的一个重要问题就是Session的处理办法,无论是PHP、Python、Ruby还是Java,只要使用服务器保存Session,在做负载均衡时都需要考虑Session的问...

a928154159
2017/09/13
0
0
分布式session共享常用的几种方式

tomcat session共享常用的几种方式 1、请求精确定位 粘性会话:session sticky 例如基于访问ip的hash策略,即当前用户的请求都集中定位到一台服务器中,这样单台服务器保存了用户的session登...

啃不动地大坚果
2018/06/14
58
0
两台服务器实现会话共享

前言: 公司的产品上线了, 对于大并发量的客户访问和对手的攻击,真是苦不堪言,所以集群的部署重要,现在集群的部署一般有两种方式,第一种,看到大部分人的做法一般是Nginx+Memcached+Tomcat进行...

逝去的回忆
2016/10/11
201
0
负载均衡会话共享

前言: 公司的产品上线了, 对于大并发量的客户访问和对手的攻击,真是苦不堪言,所以集群的部署重要,现在集群的部署一般有两种方式,第一种,看到大部分人的做法一般是Nginx+Memcached+Tomcat进行...

逝去的回忆
2016/09/28
32
0

没有更多内容

加载失败,请刷新页面

加载更多

IT兄弟连 HTML5教程 HTML5表单 新增的表单属性1

HTML5 Input表单为<form>和<input>标签添加了几个新属性,属性如表1。 1 autocomplete属性 autocomplete属性规定form或input域应该拥有自动完成功能,当用户在自动完成域中开始输入时,浏览器...

老码农的一亩三分地
37分钟前
5
0
OSChina 周五乱弹 —— 葛优理论+1

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @这次装个文艺青年吧 :#今日歌曲推荐# 分享米津玄師的单曲《LOSER》: mv中的舞蹈诡异却又美丽,如此随性怕是难再跳出第二次…… 《LOSER》-...

小小编辑
今天
990
16
nginx学习笔记

中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。 是连接两个独立应用程序或独立系统的软件。 web请求通过中间件可以直接调用操作系统,也可以经过中间件把请求分发到多...

码农实战
今天
5
0
Spring Security 实战干货:玩转自定义登录

1. 前言 前面的关于 Spring Security 相关的文章只是一个预热。为了接下来更好的实战,如果你错过了请从 Spring Security 实战系列 开始。安全访问的第一步就是认证(Authentication),认证...

码农小胖哥
今天
15
0
JAVA 实现雪花算法生成唯一订单号工具类

import lombok.SneakyThrows;import lombok.extern.slf4j.Slf4j;import java.util.Calendar;/** * Default distributed primary key generator. * * <p> * Use snowflake......

huangkejie
昨天
18
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部