第五章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> 即可然后模板里使用到父组件参数的话,需在变量前面加上 props,如 <div>{{count}}</div> 改为 <div>{{props.count}}</div>如果组件比较简单,只是展示数据的话&…...
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----构造脚本搭建栅栏和石头墙
打开任意一个蓝图都有构造脚本,就是当这个蓝图在诞生时就会运行的东西 新建一个蓝图,在构造函数里添加静态网格体,把蓝图拖出来就能显示 多个栅栏 创建多个栅栏。新建一个变量为栅栏数量,数组从0开始,所以countt要减一…...
零基础看懂免费开源的Stable Diffusion
文章目录 前言Diffusion模型推理过程训练过程 Stable Diffusion模型参考 前言 前面一篇文章主要讲了扩散模型的理论基础,还没看过上篇的小伙伴可以点击查看:DDPM理论基础。这篇我们主要讲一下一经推出,就火爆全网的Stable Diffusion模型。St…...
Zmq适配Win7 SP0 / Win XP/ Win 2k
1.目的 由于发布版本的libzmq使用了较多新的系统特性,导致在低版本windows平台上无法使用。 因此,需要对zmq源码进行修改以适配低版本的系统,如Win7 SP0,Win XP,Win2003等等。 2.Win7 SP0 #if defined ZMQ_HAVE_WIN…...
掌握Python的X篇_30_使用python解析网页HTML
本篇将会介绍beutifulsoup4模块,可以用于网络爬虫、解析HTML和XML,对于没有接触过前端,不了解HTML是如何工作的,需要先解释一下什么事HTML。 1. HTML 网页中的各种布局等的背后都是非常简单的纯文本格式,那种格式称为…...
广联达OA前台sql注入+后台文件上传漏洞复现分析
文章目录 前言资产特征前台sql注入后台文件上传解决办法 前言 最近看到广联达OA的前端sql注入和后端文件上传漏洞联动的poc 广联达科技股份有限公司以建设工程领域专业应用为核心基础支撑,提供一百余款基于“端云大数据”产品/服务,提供产业大数据、产业…...
No view found for id 0x7f0901c3 for fragment解决以及线上bug排查技巧
情景再现 开发这么久,不知道你们是否也经历过这样的情况,测试或者用户,反馈app闪退,结果你自己打开开发工具,去调试,一切正常,然后闪退还是存在,只是在开发环境中不能重现。这种情况…...
腾讯云CVM服务器竞价实例是什么?和按量计费有什么区别?
腾讯云服务器CVM计费模式分为包年包月、按量计费和竞价实例,什么是竞价实例?竞价实例和按量付费相类似,优势是价格更划算,缺点是云服务器实例有被自动释放风险,腾讯云服务器网来详细说下什么是竞价实例?以及…...
Kali Linux助您网络安全攻防实战
Kali Linux:黑客与防御者的神器 Kali Linux是一款专为网络安全测试和攻防实践而设计的操作系统。它汇集了大量的安全工具,可以用于渗透测试、漏洞扫描、密码破解等任务,不仅为黑客提供了强大的攻击能力,也为安全防御者提供了测试和…...
JavaEE初阶:多线程 - 编程
1.认识线程 我们在之前认识了什么是多进程,今天我们来了解线程。 一个线程就是一个 "执行流". 每个线程之间都可以按照顺讯执行自己的代码. 多个线程之间 "同时" 执行 着多份代码. 引入进程这个概念,主要是为了解决并发编程这样的…...
一种多策略下RabbitMQ的延时队列实现
1.为什么会用到延时队列? 场景: 最近在开发一款系统中遇到这样一个场景,A系统开通套餐需要把套餐信息以邮件的形式发送给相关工作人员,经过人工审核通过后,在B系统里面开通,A系统会调B系统套餐列表接口查询套餐是否开通成功,开通成功则从A系统去完成订单,假如超过设定时间未开…...
【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...
AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...
基础测试工具使用经验
背景 vtune,perf, nsight system等基础测试工具,都是用过的,但是没有记录,都逐渐忘了。所以写这篇博客总结记录一下,只要以后发现新的用法,就记得来编辑补充一下 perf 比较基础的用法: 先改这…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)
宇树机器人多姿态起立控制强化学习框架论文解析 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一) 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...
深入浅出Diffusion模型:从原理到实践的全方位教程
I. 引言:生成式AI的黎明 – Diffusion模型是什么? 近年来,生成式人工智能(Generative AI)领域取得了爆炸性的进展,模型能够根据简单的文本提示创作出逼真的图像、连贯的文本,乃至更多令人惊叹的…...
uniapp 集成腾讯云 IM 富媒体消息(地理位置/文件)
UniApp 集成腾讯云 IM 富媒体消息全攻略(地理位置/文件) 一、功能实现原理 腾讯云 IM 通过 消息扩展机制 支持富媒体类型,核心实现方式: 标准消息类型:直接使用 SDK 内置类型(文件、图片等)自…...
LangChain 中的文档加载器(Loader)与文本切分器(Splitter)详解《二》
🧠 LangChain 中 TextSplitter 的使用详解:从基础到进阶(附代码) 一、前言 在处理大规模文本数据时,特别是在构建知识库或进行大模型训练与推理时,文本切分(Text Splitting) 是一个…...
