Tomcat Nginx Redis实现session共享过程图解

一、准备工作

中间件:Tomcat、Redis、Nginx

jar包:commons-pool2-2.4.2.jar、jedis-2.8.0.jar、tomcat-redis-session-manager-2.0.0.jar

二、配置Tomcat

多台Tomacat需要配置不同的端口号

/lib

将jar包存放到此位置

/conf/server.xml

Tomcat Nginx Redis实现session共享过程图解

Tomcat Nginx Redis实现session共享过程图解

/conf/context.xml

Tomcat Nginx Redis实现session共享过程图解

host为Redis的ip地址,port为端口,database为数据库。

Nginx

/conf/nginx.conf

Tomcat Nginx Redis实现session共享过程图解

upstream意为配置服务器列表,本例中开启了两台tomcat,端口分别为8080与9999。

proxy_pass意为配置代理服务器。

此配置意为监听本地(192.168.0.113)的80端口,并将请求以轮询方式转发给8080和9999的tomcat服务器。

Redis

Redis不需要特殊配置,启动即可。

三、测试

先后启动Redis服务、两台tomcat服务器、Nginx服务器。

在Tomcat启动页面加上标识,判断两台服务器中sessionId是否一致。

/webapps/ROOT/index.jsp:

Tomcat Nginx Redis实现session共享过程图解

四、结果

Tomcat Nginx Redis实现session共享过程图解

Tomcat Nginx Redis实现session共享过程图解

Tomcat Nginx Redis实现session共享过程图解

扫一扫手机访问