tomcat的负载均衡、动静分离(nginx联动)

news/2024/7/10 0:37:30 标签: 1024程序员节, nginx, tomcat, 负载均衡, 运维, 前端, linux

动静分离:

访问静态页面和动态页面分开

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

实验5台虚拟机

一、动态负载均衡

3台虚拟机模拟:

代理服务器:30

tomcat动态页面:21、22

代理服务器:

  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;

进html/index.html配置前端页面

tomcat后端服务器:

tomcat:两个都进入webapps 创建test目录,在下面创建index.jsp文件

cd /usr/local/tomcat/webapps

mkdir test

cd test

touch index.jsp

输入:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%

>

<html>

<head>

<title>JSP test1 page</title>

</head>

<body>

<% out.println("动态页面1,http://www.test1.com");%>

</body>

</html>

更改server.xml:

148自带host删除

最后几行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>

重启tomcat

访问20.0.0.30/index.jsp

实现动态页面负载均衡

二、四层+七层+动静分离

需要5台服务器:

  1. nginx代理
  2. 静态页面请求转发服务器
  3. tomcat服务器

代理30

tomcat动态21 22

静态 23 40

代理服务器:

下面端口号要加

下面server中端口也是80,需要改一下

配置2 3nginx静态页面服务器

  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;

        }

配置静态页面:html/inde.html

代理服务器的index.html要清空删除

20.0.0.30:8080请求静态

看是否负载均衡

浏览器有时候做不了负载均衡,curl 20.0.0.30查看就行

访问20.0.0.30/index.jsp


http://www.niftyadmin.cn/n/5119613.html

相关文章

zabbix6自动化配置监控项监控GPU

zabbix6监控GPU运行状态 部署配置开发GPU监控服务配置扩展参考链接&#xff1a; 关键词&#xff1a; zabbix 监控 GPU 监控项自动化注册 脚本监控服务 部署 部署具体细节就不详细展开了&#xff0c;我这里有三台机器&#xff0c;其中一台部署docker版的zabbix server 然后在这…

Postman环境配置

Postman环境配置 安装Postman安装node.js安装newman安装htmlextra安装git注册163邮箱用163邮箱注册gitee在pycharm中安装gitee详细文档 安装Postman 网址&#xff1a;https://www.postman.com/downloads/ 注册一个账号即可 安装node.js 安装newman npm install -g newman …

矢量图形编辑软件 illustrator 2023 mac 中文软件特点

illustrator 2023 mac是一款矢量图形编辑软件&#xff0c;用于创建和编辑排版、图标、标志、插图和其他类型的矢量图形。 illustrator 2023 mac软件特点 矢量图形&#xff1a;illustrator创建的图形是矢量图形&#xff0c;可以无限放大而不失真&#xff0c;这与像素图形编辑软…

【K8S】常用的 Kubernetes(K8S)指令

常用的 Kubernetes&#xff08;K8s&#xff09;指令&#xff1a; 创建一个资源&#xff1a;kubectl create <资源类型> <资源名称> 例如&#xff1a;kubectl create deployment my-deployment 获取资源列表&#xff1a;kubectl get <资源类型> 例如&#xf…

如何从单体架构迁移到微服务架构:挑战和最佳实践

当单体架构成为项目增长的瓶颈时&#xff0c;迁移到微服务架构就成了必然的选择。 微服务虽然具有明显的优点&#xff0c;但由于其内在复杂性和缺乏一种通用的迁移方案&#xff0c;实施过程中可能会遇到不少挑战。本文旨在分享解决方案架构师在单体架构向微服务迁移过程中的专…

django建站过程(3)定义模型与管理页

定义模型与管理页 定义模型[models.py]迁移模型向管理注册模型[admin.py]注册模型使用Admin.site.register(模型名)修改Django后台管理的名称定义管理列表页面应用名称修改管理列表添加查询功能 django shell交互式shell会话 认证和授权 定义模型[models.py] 模仿博客形式&…

STM32 PWM配置及呼吸灯

PWM的英文全称是"Pulse Width Modulation"&#xff0c;中文翻译为"脉冲宽度调制"。 在PWM中可以调节的其实只有两个东西&#xff0c;一个叫做可调周期&#xff08;调频率&#xff09;&#xff0c;另一个叫做占空比&#xff08;高电平/周期&#xff09;。 而…

使用docker-compose私有化部署 GitLab

在软件开发和协作过程中&#xff0c;版本控制是至关重要的一环。GitLab 是一个功能强大的开源平台&#xff0c;提供了完整的代码管理功能&#xff0c;包括版本控制、问题跟踪以及持续集成等。这使得团队能够更高效地协作开发。前段时间翻阅笔记时&#xff0c;偶然发现了之前公司…