tomcat---动静分离

访问静态和动态页面分开

实现动态的静态页面负载均衡

实验一

准备阶段:三台虚拟机

nginx代理服务器 :20.0.0.40

tomcat1 :20.0.0.50

tomcat2:20.0.0.51

配置关闭虚拟机防火墙和安全机制

systemctl stop firewalld

setenforce 0

配置nginx代理服务器 conf/nginx

upstream tomcat {
    server ip1:8080 weight=2;
    server ip2:8080 weight=3;
}

location ~* \.jsp$ {
   proxy_pass http://tomcat;
   proxy_set_header HOST $host;
   proxy_set_header X-Real-IP $remote_addr;
   proxy_set_header X-Forwarded_For $proxy_add_x_forwarded_for;
   #在nginx作为代理服务器时,会把所有经过的机器的IP,以及代理地址的IP全部记录下来
 }

nginx -t 检测配置文件是否有错

systemctl restart nginx 重启服务

切换到html目录下 cd /html

<html>
<body>
<h1>this is Nginx static test !!<h1>
<img src="图片">
</body>
</html>

配置后端tomcat

进入webapps目录下创建一个目录,在目录下创建index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>tomcat01</title>   
</head>
<body>
<% out.println("tomcat01 running");%>
</body>
</html>

进入主配置文件并做备份 conf/server.conf

#删除前面的 HOST 配置
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
	<Context docBase="/usr/local/tomcat/webapps/test" path="" reloadable="true" />
</Host>

然后进入bin目录下启动tomcat

./shutdown.sh
./stratup.sh

查看8080端口是否启动

netstat -antp | grep 8080

同理tomcat也是上述操作

实验二

四层+7层+动静分离

五台服务器

1、代理服务器nginx1:20.0.0.40

2、静态页面和动态的请求转发服务器

20.0.0.41

20.0.0.42

3、后端服务器

tomcat1:20.0.0.50

tomcat2:20.0.0.51

配置代理服务器

stream {
  upstream static {
   server 20.0.0.50:80 weight=1;
   server 20.0.0.60:80 weight=1;
  }
  server {
     listen 80;
     proxy_pass static;
  }
}

转发服务器

upstream tomcat {
   server tomcatip1:8080 weight=1;
   server tomcatip2:8080 weight=2;
}

location ~* \.jsp$ {
   proxy_pass http://tomcat;
   proxy_set_header HOST $host;
   proxy_set_header X-Real-IP $remote_addr;
   proxy_set_header X-Forwarded_For $proxy_add_x_forwarded_for;
   #在nginx作为代理服务器时,会把所有经过的机器的IP,以及代理地址的IP全部记录下来
 }

配置静态页面的命令

<html>
<body>
<h1>this is Nginx static test !!<h1>
<img src="图片">
</body>
</html>

同理nginx2也是一样的

tomcat不需要动,实验一已经配置完毕

在浏览器上20.0.0.40可以查看静态

20.0.0.40/index.jsp查看动态

相关推荐
非 白6 分钟前
【Java分布式】Nacos注册中心
java·开发语言·nacos·注册中心
吃海鲜的骆驼12 分钟前
服务异步通讯与RabbitMQ
java·分布式·后端·rabbitmq
羱滒15 分钟前
sql调优之数据库开发规范
java·数据库·数据库开发
Forget the Dream44 分钟前
设计模式之责任链模式
java·c++·设计模式·责任链模式
jonyleek1 小时前
「JVS更新日志」低代码、企业会议、智能BI、智能排产2.26更新说明
java·大数据·低代码·数据分析·软件需求
计算机小白一个1 小时前
蓝桥杯 Java B 组之最短路径算法(Dijkstra、Floyd-Warshall)
java·数据结构·算法·蓝桥杯
曼岛_1 小时前
[密码学实战]Java实现SM4加解密(ecb,cbc)及工具验证
java·密码学
Forget the Dream2 小时前
设计模式之代理模式
java·c++·设计模式·代理模式
帅的飞起来2 小时前
设计模式--spring中用到的设计模式
java·spring·设计模式
張葒兵3 小时前
记一次命令行启动springboot项目的问题 java -jar的问题
java·spring boot·jar