lnmp——nginx+tomcat动态实现的tomcat服务器之间负载均衡

本文介绍了如何使用nginx作为反向代理,结合两个tomcat服务器(tomcat1和tomcat2)实现动态负载均衡。在实验环境中,通过配置nginx的upstream模块,将请求分发到两个不同地址的tomcat服务器,实现客户端浏览器的轮询访问,但未实现会话保持,可能导致数据丢失。详细步骤包括在各服务器上的配置操作和测试过程。
摘要由CSDN通过智能技术生成

之前我们已经实现了客户端访问nginx服务器的时候,通过jsp动态获取tomcat服务器上面的资源
接下来实现nginx做反向代理+tomcat做web服务器实现两个web(tomcat1和tomcat2)之间的负载均衡
并且客户端可以在浏览器动态注册信息,web1和web2轮询
但是没有会话保持,每刷新一次数据就可能会丢失

1.实验环境

两个企业6的虚拟机和一个企业7的物理机

主机信息主机功能
虚拟机server1(172.25.8.1)nginx反向代理+tomcat1服务器
虚拟机server2(172.25.8.2)tomcat2服务器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.具体实现的过程如下

  • (1)在server1上面:
cd /usr/local
ll
scp -r apache-tomcat idk root@172.25.12.2:/usr/local将tomcat服务器的两个目录传给server2虚拟机

在这里插入图片描述

  • (2)在server2上面:
vim /etc/profile
写入java的环境变量
source /etc/profile
java tab
java -version

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

cd /usr/local
ll
ln -s apache-tomcat tomcat

在这里插入图片描述

  • (3)在server1上面:
cd /usr/local/openrestry/nginx/conf
vim nginx.conf

加入
upstream memcache {
server 172.25.12.1:8080;
server 172.25.12.2:8080;
}
在这里插入图片描述
在这里插入图片描述

  • (4)测试
此时在浏览器里面访问172.25.12.1:8080可以访问(因为tomcat服务器默认开启8080端口)
因此可以请求到tomcta的动态资源(通过jsp)
此时不可以在浏览器浏览器里面访问172.25.12.1/index.jsp

在这里插入图片描述
在这里插入图片描述

  • (5)在server2上面:
cd /usr/local
cd tomcat/
ls
cd bin/
./startup.sh

在这里插入图片描述
netstat -tnlp
在这里插入图片描述

  • (6)在server1上面:
cd /usr/local/tomcat/
cd webapps/ROOT/
ls
cat test.isp
把这个文件删除,重新拷贝两个test.jsp给tomcat1和tomcat2个一个(从真机)

在这里插入图片描述
在这里插入图片描述

cd /usr/local/tomcat/bin/
./shutdown.sh
./startup.sh
netstat -antlupe

在这里插入图片描述
在这里插入图片描述

  • (7)在server2上面:
cd /usr/local/tomcat/bin/
./shutdown.sh
./startup.sh
netstat -antlupe

在这里插入图片描述

  • (8)在server1上面:
/usr/local/openresty/nginx/sbin/nginx -s reload
vim /usr/local/openresty/nginx/conf/nginx.conf
http://tomcat;让nginx去轮询两个tomcat服务器(之前是访问自己)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

把/memc模块注释
/usr/local/openresty/nginx/sbin/nginx -s reload
ps ax查看nginx是否开启
netstat -antlupe

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • (9)测试:清空一下浏览器的缓存,开始测试
172.25.12.1/test.jsp这是一个动态页面
发现同一个用户注册信息,轮询两个tomcat服务器,这样会造成用户的数据丢失
就像用户第一次注册了数据,第二次登录说不存在一样
因为第一次注册的数据可能访问的是tomcat1,第二次登录的时候是tomcat2
nginx负责负载均衡,客户根本不知道后台是两个服务器在轮询
此时的两个tomcat服务器之间没有任何关系

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值