当前位置: 首页 > news >正文

第五章nginx负载均衡

负载均衡:反向代理来实现

nginx的七层代理:

七层是最常用的反向代理方式,只能配置在nginx配置文件的hppt模块中。而且配置方法名称:upstream模块,不能写在server中,也不能在location中,在http模块中是独立的一个配置

七层代理:七层代理的就是http的请求和响应。

客户端——>http请求———>七层代理(代理服务器)——>代理服务器转发http请求到内部的一组服务器(web集群)——>客户端不知道请求的代理服务器还是内部服务器,而且通过代理服务器影藏了内部服务器ip。

实际上访问的是代理服务器,请求到代理,代理转发给web服务器。web服务器响应。最终是由web服务器响应的。

四层代理:四层代理是基于tcp ,ip 协议层的代理转发方式,可以实现基于ip地址和端口进行负载均衡转发

四层代理特点:四层代理是无法获取http请求当中的uri信息,只能对tcp/udp数据包进行转发,流量转发。stream是不能配置在http模块中,配置在全局中。是属于一个独立的模块,不隶属于其他任何模块。

四层代理和七层代理之间的区别:(面试题)

1,七层走的是HTTP请求,四层走的是tcp/udp的数据包,转发的是流量。

七层代理,http请求,可以对请求进行深入的解析和处理,控制流量,内容的guolv

四层代理不能进行流量控制,也没办法对内容进行过滤。

四层代理通常适用于:需要处理大量链接请求的场景

七层:对请求进行精确处理和控制的场景

没实际工作,四层和七层可以配合使用

2,四层和七层谁的速度快?

四层的速度比七层速度快

)1,四层只是流量转发,不能对请求进行解析和控制,所以速度快

)2,四层代理走的是内核,内核转发的流量,所以速度快

)3,七层慢,他对请求进行处理和解析,速度比较慢

)4,七层走的是用户态,访问控制,流量处理,所以速度比较慢

七层代理可以提供更高级的服务和更高级的用户体验

正向代理:

proxy_pass 配置代理服务器访问的地址,只能写在location模块中

反向代理:

客户端访问代理服务器,代理服务器转请求,或者流量到后端服务器,后端的web服务器会有多台,用户并不知道最终访问的是那一台服务器。

负载均衡,高可用,可扩展提高可维护性

你在工作中怎么做反向代理?(面试题)

upstream:基于http实现负载均衡。反向代理

1,http请求的负载均衡方式、

2,没有缓存

3,负载均衡的算法:

)1,默认算法:轮询rr,请求轮流分配给后端服务器,轮询算法适用于web服务器处理能力相近的情况,默认算法,可以不加。

)2,加权轮询:建立在轮询算法的基础之上,通过给不同的web服务器权重,让处理能力更强大的服务器可以分配到更多的请求,最然配置了权重,但是轮询的结果未必准确。

)3,ip_hash:根据ip地址计算出一个hash值,使用使用ip hash算法,同一个客户端的请求会被分配到同一个后端服务器。保证会话的稳定性,如果后端服务器的数量发生变化,hash会被重新计算请求的服务器也会发生变化。

)4,最少连接数:least_conn :会轮询,会将请求发送到当前连接数最少的后端web服务器。适用于后端服务器处理任务耗时不同的情况,并避免了所有请求集中在处理能力更强的后端服务器上,会和加权轮询配合使用。

)5,url_hash:根据uri地址计算hash值,使用url hash,会把相同请求的uri会分配到同一个后端web服务器。

总结:

小场景:并发量很小,默认算法就可以满足适应条件

后端web服务器的处理能力有差异:加权轮询,和最小连接数配合使用。

大型并发:ip _hash 或者 url_hash 。第一次请求之后,会有本地的缓存,而且因为hash算法的原因,请求的后台web服务器不会发生变化,可以提高访问速度,访问的是缓存。减轻了后台服务器的请求压力。

注意点:

1,ip_hash ,后端web服务器数量发生变化,请求的服务器也会发生变化。

2,url_hash ,请求的地址发生变化,请求的服务器也可能会发生变化。

你怎么做反向代理?(面试题)

反向代理就是负载均衡,要做负载均衡,就是看你场景的把并发量,访问人数有多少,根据这个指标来确定负载均衡的算法。

并发量小:默认轮询或者加权配合最小连接数使用

高并发:ip_hash 或者url_hash 来实现,访问一次之后,就不会在切换后端web服务器,下一次访问就是缓存,速度快,后台web服务器请求的压力就会变小

问反向代理就是问负载均衡,制作集群,负载分发,根据场景进行选择算法,分为两种算法

相关文章:

第五章nginx负载均衡

负载均衡:反向代理来实现 nginx的七层代理: 七层是最常用的反向代理方式,只能配置在nginx配置文件的hppt模块中。而且配置方法名称:upstream模块,不能写在server中,也不能在location中,在http…...

MATLAB计算一组坐标点的相互距离(pdist、squareform、pdist2函数)

如果有一组坐标P(X,Y),包含多个点的X和Y坐标,计算其坐标点之间的相互距离 一、坐标点 P[1 1;5 2;3 6;8 8;4 5;5 1; 6 9];二、pdist函数 输出的结果是一维数组,获得任意两个坐标之间的距离,但没有对应关系 Dpdist(P)三、square…...

我国农机自动驾驶系统需求日益增长,北斗系统赋能精准农业

中国现代农业的发展,离不开智能化、自动化设备,迫切需要自动驾驶系统与农用机械的密切结合。自动驾驶农机不仅能够缓解劳动力短缺问题,提升劳作生产效率,同时还能对农业进行智慧化升级,成为解决当下农业痛点的有效手段…...

防雷检测行业应用完整解决方案

防雷检测是指对雷电防护装置的性能、质量和安全进行检测的活动,是保障人民生命财产和公共安全的重要措施。防雷检测的作用和意义主要有以下几点: 防止或减少雷电灾害事故的发生。雷电是一种自然现象,具有不可预测、不可控制和高能量等特点&a…...

16.4 【Linux】特殊文件与程序

16.4.1 具有 SUID/SGID 权限的指令执行状态 SUID 的权限其实与程序的相关性非常的大!为什么呢?先来看看 SUID 的程序是如何被一般使用者执行,且具有什么特色呢? SUID 权限仅对二进制程序(binary program)…...

qrcode.react生成二维码

qrcode.react 是一个**用于生成二维码(QR 码)的 React 组件库。**它提供了一个 React 组件,可以轻松地在 React 应用程序中生成和显示 QR 码。 使用 qrcode.react,可以以声明式的方式在 React 组件中定义 QR 码的内容、尺寸、颜色…...

ETF套利及交易者如何进行套利的

ETF套利 什么是ETF套利为什么同一ETF在不同交易所上的价格会出现差异?如何操作ETF套利交易所如何解决ETF套利问题的? 什么是ETF套利 ETF(Exchange-Traded Fund)套利是一种通过利用市场中不同交易所交易价格之间的差异来获得利润的…...

了解异或的好处和用途

1.什么是异或? 异或:对于二进制,相同为0 不同为11 ⊕ 1 00 ⊕ 0 01 ⊕ 0 10 ⊕ 1 1 2.异或的好处? 异或的好处?1.快速比较两个值 2.xor a a例如 a 3 011xor 0110003.可以使用 异或 来使某些特定的位翻转【原因…...

vue函数式组件

<template>改为<template functional> 即可然后模板里使用到父组件参数的话&#xff0c;需在变量前面加上 props&#xff0c;如 <div>{{count}}</div> 改为 <div>{{props.count}}</div>如果组件比较简单&#xff0c;只是展示数据的话&…...

Idea Live Template 功能总结

文章目录 Java自带的template属性模板psf——public static finalpsfi——public static final intpsfi——public static final StringSt——String 方法模板psvm——main方法sout——打印语句iter——for迭代循环fori——for循环 代码块模板if-e —— if elseelse-if 自定义自…...

场景入门12----构造脚本搭建栅栏和石头墙

打开任意一个蓝图都有构造脚本&#xff0c;就是当这个蓝图在诞生时就会运行的东西 新建一个蓝图&#xff0c;在构造函数里添加静态网格体&#xff0c;把蓝图拖出来就能显示 多个栅栏 创建多个栅栏。新建一个变量为栅栏数量&#xff0c;数组从0开始&#xff0c;所以countt要减一…...

零基础看懂免费开源的Stable Diffusion

文章目录 前言Diffusion模型推理过程训练过程 Stable Diffusion模型参考 前言 前面一篇文章主要讲了扩散模型的理论基础&#xff0c;还没看过上篇的小伙伴可以点击查看&#xff1a;DDPM理论基础。这篇我们主要讲一下一经推出&#xff0c;就火爆全网的Stable Diffusion模型。St…...

Zmq适配Win7 SP0 / Win XP/ Win 2k

1.目的 由于发布版本的libzmq使用了较多新的系统特性&#xff0c;导致在低版本windows平台上无法使用。 因此&#xff0c;需要对zmq源码进行修改以适配低版本的系统&#xff0c;如Win7 SP0&#xff0c;Win XP&#xff0c;Win2003等等。 2.Win7 SP0 #if defined ZMQ_HAVE_WIN…...

掌握Python的X篇_30_使用python解析网页HTML

本篇将会介绍beutifulsoup4模块&#xff0c;可以用于网络爬虫、解析HTML和XML&#xff0c;对于没有接触过前端&#xff0c;不了解HTML是如何工作的&#xff0c;需要先解释一下什么事HTML。 1. HTML 网页中的各种布局等的背后都是非常简单的纯文本格式&#xff0c;那种格式称为…...

广联达OA前台sql注入+后台文件上传漏洞复现分析

文章目录 前言资产特征前台sql注入后台文件上传解决办法 前言 最近看到广联达OA的前端sql注入和后端文件上传漏洞联动的poc 广联达科技股份有限公司以建设工程领域专业应用为核心基础支撑&#xff0c;提供一百余款基于“端云大数据”产品/服务&#xff0c;提供产业大数据、产业…...

No view found for id 0x7f0901c3 for fragment解决以及线上bug排查技巧

情景再现 开发这么久&#xff0c;不知道你们是否也经历过这样的情况&#xff0c;测试或者用户&#xff0c;反馈app闪退&#xff0c;结果你自己打开开发工具&#xff0c;去调试&#xff0c;一切正常&#xff0c;然后闪退还是存在&#xff0c;只是在开发环境中不能重现。这种情况…...

腾讯云CVM服务器竞价实例是什么?和按量计费有什么区别?

腾讯云服务器CVM计费模式分为包年包月、按量计费和竞价实例&#xff0c;什么是竞价实例&#xff1f;竞价实例和按量付费相类似&#xff0c;优势是价格更划算&#xff0c;缺点是云服务器实例有被自动释放风险&#xff0c;腾讯云服务器网来详细说下什么是竞价实例&#xff1f;以及…...

Kali Linux助您网络安全攻防实战

Kali Linux&#xff1a;黑客与防御者的神器 Kali Linux是一款专为网络安全测试和攻防实践而设计的操作系统。它汇集了大量的安全工具&#xff0c;可以用于渗透测试、漏洞扫描、密码破解等任务&#xff0c;不仅为黑客提供了强大的攻击能力&#xff0c;也为安全防御者提供了测试和…...

JavaEE初阶:多线程 - 编程

1.认识线程 我们在之前认识了什么是多进程&#xff0c;今天我们来了解线程。 一个线程就是一个 "执行流". 每个线程之间都可以按照顺讯执行自己的代码. 多个线程之间 "同时" 执行 着多份代码. 引入进程这个概念&#xff0c;主要是为了解决并发编程这样的…...

一种多策略下RabbitMQ的延时队列实现

1.为什么会用到延时队列? 场景: 最近在开发一款系统中遇到这样一个场景,A系统开通套餐需要把套餐信息以邮件的形式发送给相关工作人员,经过人工审核通过后,在B系统里面开通,A系统会调B系统套餐列表接口查询套餐是否开通成功,开通成功则从A系统去完成订单,假如超过设定时间未开…...

工控机厂家怎么选?20年从业者告诉你这5个关键点

在工业自动化领域&#xff0c;工控机的选择直接关系到生产线的稳定运行。作为一名在工业电脑行业摸爬滚打20年的从业者&#xff0c;我见过太多企业因为选错厂家而付出惨痛代价——设备频繁故障、售后推诿扯皮、项目延期损失百万。今天&#xff0c;我就从专业角度告诉你&#xf…...

3个关键设置让Windows风扇控制软件发挥最佳性能

3个关键设置让Windows风扇控制软件发挥最佳性能 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/fa/FanControl.Relea…...

初创公司技术选型时为何将Taotoken作为大模型统一接入层

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 初创公司技术选型时为何将Taotoken作为大模型统一接入层 对于初创公司的技术负责人而言&#xff0c;在构建基于大模型的应用时&…...

ARM SVE存储指令ST1D与ST1H深度解析与优化

1. ARM SVE存储指令深度解析在ARMv8架构的可扩展向量扩展(SVE)指令集中&#xff0c;ST1D和ST1H指令扮演着关键角色。这些指令专为高效的内存存储操作设计&#xff0c;特别适合处理大规模数据集的场景。与传统的标量存储指令相比&#xff0c;它们能同时处理多个数据元素&#xf…...

Deskreen:如何将任何浏览器设备变成你的第二屏幕?

Deskreen&#xff1a;如何将任何浏览器设备变成你的第二屏幕&#xff1f; 【免费下载链接】deskreen Deskreen turns any device with a web browser into a secondary screen for your computer. ⭐️ Star to support our work! 项目地址: https://gitcode.com/gh_mirrors/…...

Midjourney印象派商业级应用白皮书(含版权合规清单):广告/出版/IP衍生必备的5类授权边界判定法

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;Midjourney印象派商业级应用白皮书导论 Midjourney 不仅是生成式AI图像工具&#xff0c;更是一种可嵌入品牌视觉系统、广告创意链路与数字内容工业化流程的视觉协作者。其“印象派”风格能力——强调光色律动、…...

3分钟学会:用WinDiskWriter轻松为老旧电脑安装Windows 11系统

3分钟学会&#xff1a;用WinDiskWriter轻松为老旧电脑安装Windows 11系统 【免费下载链接】windiskwriter &#x1f5a5; Windows Bootable USB creator for macOS. &#x1f6e0; Patches Windows 11 to bypass TPM and Secure Boot requirements. &#x1f47e; UEFI & L…...

终极指南:如何在Mac上免费快速制作Windows启动盘?

终极指南&#xff1a;如何在Mac上免费快速制作Windows启动盘&#xff1f; 【免费下载链接】windiskwriter &#x1f5a5; Windows Bootable USB creator for macOS. &#x1f6e0; Patches Windows 11 to bypass TPM and Secure Boot requirements. &#x1f47e; UEFI & L…...

避坑指南:ESP32驱动SD卡给LVGL用,我踩过的那些‘焊盘’和‘代码坑’

ESP32驱动SD卡与LVGL整合实战&#xff1a;从硬件焊接到软件调试的完整避坑手册 第一次将ESP32、SD卡和LVGL整合到同一个项目中时&#xff0c;我天真地以为这不过是简单的模块拼接。直到电路板上的焊锡冷却&#xff0c;代码编译通过却无法运行时&#xff0c;才意识到自己正踏入…...

别再乱调了!YOLOv8实战中NMS和IoU参数到底怎么设?附真实场景对比图

YOLOv8实战&#xff1a;NMS与IoU参数调优的黄金法则 在目标检测领域&#xff0c;YOLOv8凭借其卓越的性能和易用性已成为众多开发者的首选。然而&#xff0c;许多人在模型推理阶段常常陷入参数调整的困境——尤其是非极大值抑制(NMS)和交并比(IoU)这两个关键参数。不当的设置可…...