Redis实现Nginx+Tomcat在windows平台上配置负载均衡的session共享(2)

上一篇文章实现Nginx+Tomcat在windows平台上配置负载均衡,但遗留一个问题就是session未共享,本文主要是针对上篇文章的补充,使用Redis实现session的共享。

一、准备工作

对于Nginx+Tomcat在此不做赘述,主要针对新工具使用说明及集成方法说明。

下载新工具:

redis-64.3.0.503.zip,这是redis的Windows版本,下载后解压放到任意目录中(不要放到带中文的目录中),可使用附件中内容

redis-desktop-manager-0.8.8.384.exe,这是redis图形化工具,下载后安装到任意目录中(不要放到带中文的目录中)

新增jar包,这些jar包需要放到Tomcat的lib中

commons-pool2-2.3.jar

jedis-2.7.2.jar

tomcat-redis-session-manager1.2.jar

二、Redis配置

redis没有多少配置,读者可网上自行查看,或者可以查看此网站内容http://www.runoob.com/redis/redis-conf.html

特别说明:

2.1、requirepass:这是redis登录密码设置,默认是关闭的,读者可根据实际情况修改

2.2、port 6379:这是redis默认端口,读者可根据实际情况修改

启动说明:为了更好管理redis,特编写bat处理文件,如读者使用则需要修改:“redis 所在的盘符”和“redis 所在目录”即可,启动后如图所示。

 
Redis实现Nginx+Tomcat在windows平台上配置负载均衡的session共享(2)
 

三、修改Tomcat

为了能够实现Tomcat的session共享,需修改Tomcat中context.xml 文件,使 tomcat-redis-session-manager-master 作为session管理器,同时指定redis地址和端口。

context.xml 增加以下配置

<Context>

      <Valve classname="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" />

      <Manager classname="com.orangefunction.tomcat.redissessions.RedisSessionManager"

           host="localhost"

           port="6379"

           database="0"

           maxInactiveInterval="60" />

</Context>

同时将上述jar放到Tomcat的lib中,重启Tomcat。

四、测试反馈

 Tomcat重启成功后,在浏览器中访问http://localhost/test/index.jsp,观察实例再变化,但是session并未变化,则说明已实现session的共享功能。


Redis实现Nginx+Tomcat在windows平台上配置负载均衡的session共享(2)
 
Redis实现Nginx+Tomcat在windows平台上配置负载均衡的session共享(2)
 观察redis里只有一个session值,且与界面中展示的相同。


Redis实现Nginx+Tomcat在windows平台上配置负载均衡的session共享(2)
 

相关推荐