首页 > 其他 > 详细

Tomcat实现Session复制

时间:2019-09-24 21:00:03      阅读:105      评论:0      收藏:0      [点我收藏+]

Tomcat实现Session复制

需要三台虚拟机一台Nginx两台Tomcat

关闭相关的安全机制

systemctl stop firewalld
iptables -F
setenforce 0

首先需要将两台Tomcat和一台nginx实现负载均衡

[root@nginx ~]# vim /usr/local/nginx/conf/nginx.conf

 

在http底下写入一个地址池里面写入你的IP地址:端口:权重

 

 upstream tomcat_server {                             #你的地址池

 

server 192.168.200.12:8080 weight=1;         

 

server 192.168.200.13:8080 weight=1;

 

    }

 

在server里面实现你访问jsp的负载均衡

 

location ~ \.jsp$ {

 

            proxy_pass http://tomcat_server;         #你的地址池名称

 

           proxy_set_header Host $http_host;

 

        }

 

 

一:配置各个机器的主机名

一台命名为Nginx

两台命名为node1 ,node2

[root@localhost ~]#hostname Nginx

[root@localhost ~]#hostname node1

[root@localhost ~]#hostname node2

二:配置主机名与ip的映射

[root@localhost ~]# vim /etc/hosts            #修改etc下的hosts文件

 

192.168.200.16 nginx

192.168.200.12 node1

192.168.200.13 node2

三:修改Tomcat的配置文件               

注:两台Tomcat都要做相同配置

[root@node1 ~]# vim /usr/local/tomcat/webapps/ROOT/session.jsp              #创建测试文件
Session ID:<%= session.getId() %><BR>
Sessionport:<%= request.getServerPort() %>
<% out.println("hello 192.168.200.12");%>

[root@node1 ~]# vim /usr/local/tomcat/conf/server.xml       #修改Tomcat的主配文件

<Engine name="Catalina" defaultHost="localhost" jvmRoute="node1">                #将括号中加入jvmRoute=“node1”主机名

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>                 #取消注释(还有官方的方法加入官方给的代码)

[root@node1 ~]# vim /usr/local/tomcat/webapps/ROOT/WEB-INF/web.xml        #修改web.xml文件

将文件的倒数第二行加入<distrbutable/>

四:重新启动服务

 

[root@node1 ~]# /usr/local/tomcat/bin/shutdown.sh && /usr/local/tomcat/bin/startup.sh
 五:如果出现错误需要添加组播地址

route add -net 224.0.0.0 network 240.0.0.0 dev ens32     #最后写入自己的网卡名称

Tomcat实现Session复制

原文:https://www.cnblogs.com/ZCQ123456/p/11580943.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!