使用开源插件tomcat-redis-session-manager实现session共享

生活中,最使人疲惫的往往不是道路的遥远,而是心中的郁闷;最使人痛苦的往往不是生活的不幸,而是希望的破灭;最使人颓废的往往不是前途的坎坷,而是自信的丧失;最使人绝望的往往不是挫折的打击,而是心灵的死亡。所以我们要有自己的梦想,让梦想的星光指引着我们走出落漠,走出惆怅,带着我们走进自己的理想。

导读:本篇文章讲解 使用开源插件tomcat-redis-session-manager实现session共享,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

使用tomcat-redis-session-manager实现session共享

tomcat-redis-session-manager介绍

tomcat-redis-session-manager是一个开源项目。地址:https://github.com/jcoleman/tomcat-redis-session-manager

会话管理器的实现,用于将会话存储在Redis中,以便在Tomcat服务器群集之间轻松分配请求。会话被实现为非粘性的-也就是说,每个请求都可以发送到集群中的任何服务器(与Apache提供的Tomcat集群设置不同)

会话在创建后立即存储到Redis中,以供其他服务器使用。会话是根据Redis的请求直接加载的(但是在同一请求上下文中对会话的后续请求将返回ThreadLocal缓存,而不是多次访问Redis。)为了尽可能避免冲突(和丢失的写操作),会话数据如果会话已修改,则仅在Redis中更新

管理器依靠Redis的本机到期功能来使密钥自动过期,从而避免了不断在整个会话列表中搜索过期会话的开销

会话中存储的数据必须可序列化

该项目同时支持Tomcat 6和Tomcat7。
在这里插入图片描述
当前不支持Tomcat 8,也没有进行任何测试或开发
在这里插入图片描述
在这里插入图片描述

具体做法

该项目仅支持tomcat6和tomcat7,对于tomcat8不支持,但可以通过二次开发实现tomcat8的支持.

GitHub上有人发布了对Tomcat8的支持
在这里插入图片描述
在这里插入图片描述

1.编辑tomcat/conf/context.xml文件
在这里插入图片描述
2.在<Context>节点下进行如下配置:

注意:
className一定得对应类所在的位置!包结构不同此处必然不同.
若redis有配置密码则使用下面注释配置
<Valve className="com.*.*.RedisSessionHandlerValve"/> 
<Manager className="com.*.*.RedisSessionManager" 
		  host="localhost"
		  port="6379"
		  database="0" 
		  password="123"
		  maxInactiveInterval="60" /> 

在这里插入图片描述
3.Maven仓库下载上面简介中提及的两个jar包

将下载的两个jar包与对tomcat8支持的jar放到tomcat/lib目录中

在这里插入图片描述
4.基于maven提供的项目模板快速创建一个web项目。
在这里插入图片描述

5.修改默认的index.jsp页面,以供区别session共享是否生效.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
    <title>Tomcat1</title>
</head>
<body>
SessionID:<%=session.getId()%>
<br>
SessionIP:<%=request.getServerName()%>
<br>
SessionPort:<%=request.getServerPort()%>
</body>
</html>

在这里插入图片描述
6.tomcat启动信息配置
在这里插入图片描述
在这里插入图片描述
7.验证
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/137159.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!