【Nginx】负载均衡、动静分离理论篇

news2024/11/13 7:59:46

一、负载均衡

1. 应用场景:

在这里插入图片描述

2. 负载均衡是什么?

在当业务系统服务器无法支撑当前的业务量时,用户可以选择更高性能的服务器。

但更为合理的做法是通过在既有业务服务器基础上,增量的方式增加相同功能的服务器,将处理任务分摊到多台较低配置的服务器处理,每台服务器都可以响应服务请求,而用户仅感受到是一台高性能服务器在提供服务。

3. 负载均衡技术:

常用的负载均衡技术有硬件和软件两种。

  • 硬件:价格比较贵,操作快不需要操作系统,过去用

  • 软件: Nginx,现在基本上都用软件

4. 反向代理技术

  • 正向代理:

正向代理 是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。

例如:翻墙的过程 —— 我们的请求经过代理服务器,代理服务器访问外面的网站,代理服务器帮忙帮应答返回回来

  • 反向代理

反向代理正好相反,对于客户端而言它就像是原始服务器,客户端向反向代理的服务器发送请求,接着反向代理将判断向何处(原始服务器)转交请求,并将获得的内容返回给客户端。客户端不需要进行任何特别的设置就可以使用反向代理。Nginx本身具有反向代理的功能。

整个过程中,客户端是不知道后端是如何运作的

二、动静分离

1. 动静分离是什么

大型网站中存在着大量的静态资源(HTML, CSS, Javascript, 图像等文件)和动态资源(Servlet, JSP, Strus2的Action, SpringMVC的处理器等)

  • 静态资源是只在浏览器上执行的
  • 动态资源是只在服务器后端执行(如 PHP、ASP 、JSP等)

2. 动静分离的实现

利用Nginx服务器对静态资源的强大处理能力,将网站中的静态资源文件部署至Nginx服务器中,将网站的动态资源部署至Tomcat中,进一步提升网站的访问效率

在这里插入图片描述

3. 动静分离的好处

存静态资源的机器我们可以选用低端一点的机器,硬盘大一点的。而对处理动态资源的机器,要选 CPU 和 内存性能好一些的。通过动静分离,我们可以将资源分开部署,访问效率更好。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/58553.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux操作系统(基础操作)

文章目录一、文件操作命令1. 目录和文件操作2. 查看文件内容3. 重定向4. 管道二、信息系统相关命令1. 查看系统进程 -- ps2. 查看系统监听端口 -- netstat3. 查看日志信息命令 -- head / tail三、用户权限和管理1. linux中的权限2.修改用户权限chmod3.增加用户、查看登录用户4.…

CAS-比较并交换

CAS-比较并交换 原子类 何为原子类 没有CAS之前 多线程环境不使用原子类保证线程安全i(基本数据类型) 常用synchronized锁,但是它比较重 ,牵扯到了用户态和内核态的切换,效率不高。 public class T3 {volatile int number 0…

JMeter 进行函数助手MD5加密

JMeter 函数助手 MD5 加密 JMeter函数助手中,提供了MD5加密的方法,如图所示,我们将内容 “123456”进行加密,可以看到加密成功了。 下面我们来看看项目接口的请求参数。 这是一个认证接口,我们可以看到请求的参数中包…

MySQL-MVCC多版本控制及事务的隔离性

MySQL事务的启动方式 隐式:执行SQL语句自动提交(前提MySQL使用SET AUTOCOMMIT1开启自动提交)显式:begin/start transaction; update user set username timi where id 1; commit; begin/start transaction命令并不是一个事务的起…

UE获取当前鼠标点击位置坐标

文章目录 1. 实现目标2. 实现过程2.1 蓝图代码2.2 实现思路3. 参考资料1. 实现目标 获取当前鼠标点击位置的UE世界坐标(x,y,z),效果如下图所示(为便于演示,下图显示了碰撞点位)。 2. 实现过程 2.1 蓝图代码 (1)核心函数的蓝图代码如下: (2)当鼠标左键按下时,…

【✨十五天搞定电工基础】一阶电路的暂态分析

本章要求1. 了解电阻元件、电感元件与电容元件的特征; 2. 理解电路的暂态和稳态、零输入响应、零状态响应、全响应的概念,以及时间常数的物 理意义; 3. 掌握换路定则及初始值的求法; 4. 掌握一阶线性电路分析的三要素法。 目录 一、一阶电路和换路定律 1…

第十四章 图的存储及图的DFS(超级详细!!逐行解析!!)

第十四章 图的存储及图的DFS一、图1、什么是图?2、图的存储(1)邻接矩阵(2)邻接表二、图的深度优先搜索1、思路2、模板(1)问题:如何求左右子树呢?什么时候记录呢?如何构造…

数字孪生场景、代码即开即用 | 图观™引擎 超详细功能范例演示

数字孪生已经从一项前沿技术,演变成为各行各业数字化转型的必选项。 过去想要构建数字孪生应用,要面对视觉设计、三维底座构建、代码开发、数据对接、部署联调等一系列复杂工作。不仅要了解复杂的数学基础知识、底层三维开发技术,还要熟知各…

Spring Cloud微服务迁移到Kubernetes容器化

文章目录相关文章k8s容器部署流程熟悉Spring Cloud微服务项目源代码编译构建构建项目镜像并推送到镜像仓库制作镜像将镜像推送到harbor仓库K8s服务编排部署基础环境在K8s中部署Nacos集群(注册和配置中心)在k8s中部署Seata分布式事务在linux部署mysql,red…

李炎恢ECMAScript6 / ES6+(二)

16.Set 数据集合 学习要点: 1.Set 数据集合 本节课我们来开始学习 ES6 新增的 Set 数据集合的用法; 一.Set 数据集合 1.ES6 之前只有数组一种数据结构,而现在提供了 Set 和 Map 两种集合; 严格来说,对象…

PC辉光效果一切正常,安卓辉光却没效果、显示异常(爆闪、黑屏等)

一:安卓端辉光不显示问题 问题描述:项目中使用unity的PostProcessing package实现辉光的功能,在pc上辉光效果一切正常,但是打出apk在真机测试时,辉光基本没效果。 解决思路:PostProcessing Bloom效果需要有…

【ArcGIS微课1000例】0056:将单波段栅格背景设置为无数据NoData的方法

本文讲解将单波段栅格背景设置为空值的方法,以DEM数据为例。 文章目录 一、DEM设置无数据二、注意事项单波段数据,一般只有DEM,遥感单波段影像,二值化图像等。 使用珊格计算器通过SetNull 函数(设定空值函数)可以将特定值计算为空值(NoData),SetNull的语法格式为: Se…

[附源码]Python计算机毕业设计Django教育企业网站

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

4-5:关注,取消关注

需求 开发关注、取消关注功能。 统计用户的关注数、粉丝数。 关键 若A关注了B,则A是B的Follower (粉丝),B是A的Followee (目标)。关注的目标可以是用户、帖子、题目等,在实现时将这些目标抽象为实体。 也是将数据存储到redis中,…

LeetCode刷题复盘笔记—一文搞懂0 - 1背包之494. 目标和问题(动态规划系列第九篇)

今日主要总结一下动态规划0-1背包的一道题目,494. 目标和问题 题目:494. 目标和 Leetcode题目地址 题目描述: 给你一个整数数组 nums 和一个整数 target 。 向数组中的每个整数前添加 ‘’ 或 ‘-’ ,然后串联起所有整数&#…

国外网友分享如何从零开始打造一辆真正的自动驾驶汽车

在 2021 年夏天大学二年级结束后,我决定从事当时最先进的项目之一——从头开发自动驾驶软件并在真车上实现。在公开我的代码的一些主要部分并发布演示视频后,我收到了很多关于该项目的问题。因此,我决定分享开发过程背后的故事。 我一直对与人工智能和机器学习相关的任何事…

Java代码审计——ClassLoader 类加载机制

目录 前言: (一)类加载机制 0x01 ClassLoader 类 0x02 loadClass()方法的流程 0x03 自定义的类加载器 0x04 loadClass()方法与 Class.forName 的区别 0x05 URLClassLoader (二)Java 动态代理 0x01 静态代理 0x02 动态代理…

2022最新 MySQL 内部技术架构面试题

更多面试题:https://javaxiaobear.gitee.io/ 47、MySQL内部支持缓存查询吗? 当MySQL接收到客户端的查询SQL之后,仅仅只需要对其进行相应的权限验证之后,就会通过Query Cache来查找结果,甚至都不需要经过Optimizer模…

dot product【点积】

(1)概念 点积在数学中,又称数量积(dot product; scalar product),是指接受在实数R上的两个向量并返回一个实数值标量的二元运算。 两个向量a [a1, a2,…, an]和b [b1, b2,…, bn]的点积定义为&#xff…

点云数据集ShapeNet

目录 1. 数据采集的作者 2. 下载shapenet数据集的代码 3. 数据特点 3.1 每个数字文件夹代表一个类别 3.2 synsetoffset2category.txt 3.3 train_test_split文件夹 3.4 pts点云文件 3.6 seg分割类别文件 1. 数据采集的作者 article{yi2016scalable,title{A scalable ac…