龙空技术网

centOS下Tomcat使用redis实现session共享

爱学习的小小程序员 289

前言:

今天看官们对“centos65jsp”可能比较珍视,姐妹们都想要剖析一些“centos65jsp”的相关文章。那么小编同时在网摘上汇集了一些对于“centos65jsp””的相关内容,希望看官们能喜欢,姐妹们一起来学习一下吧!

本篇内容主要讲述Tomcat8使用redis实现session共享,涉及的nginx,tomcat等软件安装和部署不再详细叙述。

1:环境准备。

我使用的阿里云的centOS7,已经安装了nginx,配置了默认策略的负载均衡。并部署了2个tomcat服务,一台redis。

2:我自己写了一个简单的demo来确认session是否一致,其实就是个简单的jsp页面。在这个步骤,用同一个浏览器访问同一地址,页面输出的sessionId应该是不一致的。

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ""><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>tomcat8081</title> </head> <body> tomcat8081: <% out.println(pageContext.getSession().getId()); %> </body> </html>

3:使用redis实现session共享需要用到3个jar包。(相关jar可以在中的资源下载中一起获得)

commons-pool2-2.3.jar

jedis-2.7.3.jar

tomcat-redis-session-manager-master-2.0.0.jar

4:将jar包分别放入到两个tomcat的lib下。分别将两个tomcat的conf目录中的context.xml文件加以修改,在context的节点下加入以下配置:

<Valve className="com.naritech.nicole.gump.RedisSessionHandlerValve" /><Manager className="com.naritech.nicole.gump.RedisSessionManager" host="localhost" port="6379" password="" // 需要指定,nginx刚安装完,默认是没有密码的,需要自己取redis.conf中修改。 database="0" // 需要保持一致 maxInactiveInterval="60"/>

5:重启tomcat,测试,ok!亲自使用测试过!

标签: #centos65jsp #nginxtomcat阿里云