实操Nginx(七层代理)+Tomcat多实例部署,实现负载均衡和动静分离

目录

Tomcat多实例部署(192.168.17.27)

1.安装jdk,设置jdk的环境变量

2.安装tomcat在一台已经部署了tomcat的机器上复制tomcat的配置文件取名tomcat1

​编辑

编辑配置文件更改端口号,将端口号改为8081

[启动 tomcat, tomcat1](#启动 tomcat, tomcat1)

过滤出8080和8081端口

在单独部署一台(192.168.17.26)tomcat

[打开浏览器访问192.168.17.27:8080 8081(验证是否成功)](#打开浏览器访问192.168.17.27:8080 8081(验证是否成功))

在三台tomcat上面部署分别jsp动态页面

测试网页

[Nginx的七层代理 (192.168.17.30)](#Nginx的七层代理 (192.168.17.30))

在安装了nginx的基础上部署

更改配置文件

添加

动静分离

重启nginx服务

[测试访问 192.168.17.30/static/test.html](#测试访问 192.168.17.30/static/test.html)

192.168.17.30/test/qwe.jsp (刷新界面发生改变)


Tomcat多实例部署(192.168.17.27)

1.安装jdk,设置jdk的环境变量

bash 复制代码
vim /etc/profile.d/1.sh #在profile的子目录的下创建一个文件

export JAVA_HOME=/usr/local/jdk1.8.0_361
export JRE HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH


. /etc/profile   #运行

java -version  #查看版本

java version "1.8.0_361"      #更改成功版本号
Java(TM) SE Runtime Environment (build 1.8.0_361-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.361-b09, mixed mode)

2.安装tomcat在一台已经部署了tomcat的机器上复制tomcat的配置文件取名tomcat1

编辑配置文件更改端口号,将端口号改为8081

复制代码
vim /usr/local/tomcat1/conf/server.xml

启动 tomcat, tomcat1

bash 复制代码
cd /usr/local/tomcat/bin/  #启动tomcat
./startup.sh


 cd /usr/local/tomcat1/bin/   #启动tomcat1
./startup.sh

过滤出8080和8081端口

bash 复制代码
-bash-4.2# ss -natp |grep :8080
LISTEN     0      100         :::8080                    :::*                   users:(("java",pid=3557,fd=51))
-bash-4.2# ss -natp |grep :8081
LISTEN     0      100         :::8081                    :::*                   users:(("java",pid=45066,fd=51))
-bash-4.2# 

在单独部署一台(192.168.17.26)tomcat

打开浏览器访问192.168.17.27:8080 8081(验证是否成功)

在三台tomcat上面部署分别jsp动态页面

bash 复制代码
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>JSP test1 page</title>   #指定为 test1 页面
</head>
<body>
<% out.println("动态页面 1,http://www.test1.com");%>
</body>
</html>

192.168.7.27:8080

192.168.7.27:8081

测试网页

192.168.17.26:8080/test/qwe.jsp

192.168.17.27:8081/test/qwe.jsp

192.168.17.27:8080/test/qwe.jsp

Nginx的七层代理 (192.168.17.30)

在安装了nginx的基础上部署

更改配置文件

bash 复制代码
vim /usr/local/nginx/nginx.conf

添加

bash 复制代码
upstream tomcat_server{
        server 192.168.17.26:8080 weight=1;
        server 192.168.17.27:8081 weight=1;
        server 192.168.17.27:8080 weight=1;
}

动静分离

bash 复制代码
location ~ .*\.jsp$ {
        proxy_pass http://tomcat_server;
        proxy_set_header HOST $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        }

编辑一个静态网页

bash 复制代码
cd /usr/local/nginx/html
mkdir static

添加图片 用于测试

bash 复制代码
<html>
<body>
<h1>this is static web01</h1>
<img src="iu.jpeg"/>
</body>
</html>

重启nginx服务

测试访问 192.168.17.30/static/test.html

192.168.17.30/test/qwe.jsp (刷新界面发生改变)

相关推荐
果子⌂5 小时前
Docker-构建镜像并实现LNMP架构
mysql·nginx·docker·容器·架构·php
nightunderblackcat10 小时前
新手向:实现ATM模拟系统
java·开发语言·spring boot·spring cloud·tomcat·maven·intellij-idea
XU磊2601 天前
手动实现 Tomcat 核心机制:打造属于自己的 Servlet 容器
java·servlet·tomcat
一只小阿乐1 天前
window 服务器上部署前端静态资源以及nginx 配置
运维·服务器·nginx
bjzhang751 天前
docker部署tomcat网站服务器
服务器·docker·tomcat
Linux运维技术栈1 天前
Nginx 动静分离原理与工作机制详解:从架构优化到性能提升
运维·nginx·架构
墨苒孤2 天前
【Nginx】Nginx代理WebSocket
运维·websocket·nginx
太阳伞下的阿呆2 天前
Tomcat/Jetty/Undertow对比
tomcat·nio·jetty·aio·undertow
苹果醋32 天前
Vue3组合式API应用:状态共享与逻辑复用最佳实践
java·运维·spring boot·mysql·nginx
华无丽言2 天前
如何简单实现发版不影响客户使用?nginx负载
linux·nginx