Nginx+Tomcat集群
搭建步骤:
1:将工程部署到tomcat中(注意:是部署,不是拷贝工程,工程和部署文件不一样)
2:将tomcat复制多份,如果是在同一台服务器下,则需要修改tomcat的3个端口号,如果是单独部署不同的服务器,则不需要修改(因为IP不同,不冲突)
3:修改的3个端口号依次为(默认+1即可):
<Server port="8005" shutdown="SHUTDOWN">
<Connector port="8080" protocol="HTTP/1.1"
<Connector port="8009" protocol="AJP/1.3" >
4:配置nginx的配置文件,将tomcat的信息,部署到nginx的连接中:(反向代理模式)
upstream localhost {
server 127.0.0.1:8080;
server 127.0.0.1:8081;
}
5:分别进入到tomcat的bin目录下,启动每个tomcat,并可以单独访问成功
6:启动tomcat之后,启动nginx,windows下进入到nginx的根目录,使用cmd命令执行nginx.exe即可
7:浏览器访问nginx,检验应用集群的搭建是否成功
参考资料:
Session共享解决方案
-
Tomcat本身是支持Session共享(复制),默认是关闭的,需要开启
- 只能支持session共享,但是必须保证,应用服务器tomcat在同一台服务器内或者在同一个IP段内
步骤:
1:修改每一台tomcat的server.xml配置文件: 原来为: <Engine name="Catalina" defaultHost="localhost"> 修改为: <Engine name="Catalina" defaultHost="localhost" jvmRoute="8081"> 将以下代码从注释中抽取出来: <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/> 2:在部署的项目中,修改web.xml,增加如下代码: <distributable/> 此段代码必须放到<display-name>SSH20</display-name>之后,其它代码之前
-
在登录成功之后,需要将session统一放到管理器(Redis)中