这里只说关于集群再windows下的配置,redis,nginx服务器的下载与安装不在这里赘述,其他大神的博客写的很完备了。
1. 前置条件
redis 服务器
nginx 服务器
tomcat 服务器(拷贝2份)
2. 修改tomcat配置文件
进入到tomcat的conf目录下(如:E:\ProgramFiles\apache-tomcat-7_port-8081\conf),打开server.xml,有3个端口需要修改,分别是8005、8080、8009,我们把端口依次+1,改为8006、8081、8010,再把另一份tomcat的server.xml 端口依次+2进行修改,当然第二份你也可以不修改,用tomcat默认端口即可。这个操作简单,就不上图了。
然后打开context.xml,添加内容如下:
<Valve className="com.bluejeans.tomcat.redissessions.RedisSessionHandlerValve"/>
<Manager className="com.bluejeans.tomcat.redissessions.RedisSessionManager"/>
manager 节点可以添加属性,如:host、port、database,默认值为本机参数,这里在本机做测试,参数可以不需要修改,如果你要部署生产环境,请注意参数配置。
为了方便我们下面的测试,我们把tomcat下\webapps\ROOT\index.jsp,修改一下:
重点地方我都标注了,我们在端口为8081的目录中,添加了port:8081与它的sessionId,并在后台进行了打印。
3. 添加jar包
把tomcat-redis-session-manager-2.0.0.jar、jedis-2.9.0.jar、commons-pool2-2.4.2.jar添加到tomcat的lib目录中。在最后我会附上jar包。
4. 启动redis服务,打开2个tomcat
我们可以看到,访问8081与8082不同的端口,它的sessionId都是一样的,看后台黑窗口
到此,我们redis共享session已经完成了,接下来要配置nginx代理了。
5. 配置nginx文件
进入nginx的conf目录(如:E:\ProgramFiles\nginx-1.12.1\conf),打开nginx.conf
在http节点里面添加内容:
upstream tomcat {
server localhost:8081;
server localhost:8082;
}
这两个地址是tomcat的访问地址。然后在http下面的server节点中修改localhost:
location / {
proxy_pass http://tomcat;
}
6. 启动nginx来代理tomcat
nginx启动成功,会在任务管理器中看到2个进程:
nginx默认监听的80端口,我们可以用nginx来访问tomcat了。
可以看到访问同一个localhost,却看到2个不同的tomcat,因为nginx做了负载均衡与反向代理,至此,我们的配置完成。
附上jar包地址:https://pan.baidu.com/s/1gf9Zjm7,提取密码:ffb8。