漫话:如何给女朋友解释什么是反向代理?

Synopsys工具链实战:如何用VCS、DC、ICC和Calibre跑通你的第一个数字IC设计项目? 本文详细介绍了如何使用Synopsys工具链(VCS、Design Compiler、ICC和Calibre)完成数字IC设计项目,从RTL代码到GDSII版图的全流程。涵盖环境配置、RTL设计验证、逻辑综合、物理实现及签核验证等关键步骤,帮助工程师掌握高效的数字IC设计流程。 阅读详情

本文公众号来源:漫话编程   作者:漫话编程


之前在面试的时候,在简历上写了Nginx。于是面试官就问我:“你用Nginx来做什么啊?”我当时候回答:“我用Nginx其实上就是做一个反向代理,将请求反向代理到Tomcat上。”


于是面试官就问:“那啥是反向代理啊?”(还好我那时刚好看过相关的知识点)。于是我就从正向代理开始介绍,再说回反向代理了(balabala...但最后面试我
还是挂了)


这篇文章讲得非常不错,建议阅读!

640?wx_fmt=jpeg

周末,我正在网上搜索简历,准备给团队招聘新人。这时候,女朋友回来了,看起来并不是很高兴。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

反向代理(reverse proxy):是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

正向代理

正向代理(forward proxy):是一个位于客户端和目标服务器之间的服务器(代理服务器),为了从目标服务器取得内容,客户端向代理服务器发送一个请求并指定目标,然后代理服务器向目标服务器转交请求并将获得的内容返回给客户端。

这种代理其实在生活中是比较常见的,比如科学上网技术,其用到的就是代理技术。

有时候,用户想要访问某国外网站,该网站无法在国内直接访问,但是我们可以访问到一个代理服务器,这个代理服务器可以访问到这个国外网站。这样呢,用户对该国外网站的访问就需要通过代理服务器来转发请求,并且该代理服务器也会将请求的响应再返回给用户。这个上网的过程就是用到了正向代理。

640?wx_fmt=png

这个过程其实和租房子很像。

租房子的时候,一般情况下,我们很难联系到房东,因为有些房东为了图方便,只把自己的房屋信息和钥匙交给中介了。而房客想要租房子,只能通过中介才能联系到房东。而对于房东来说,他可能根本不知道真正要租他的房子的人是谁,他只知道是中介在联系他。

这里面一共有三个角色,租客(用户)、中介(代理服务器)和房东(国外网站,目标服务器)。引入中介(代理服务器)的原因是用户无法联系上房东(用户无法访问国外网站)。

所以,正向代理,其实是"代理服务器"代理了"客户端",去和"目标服务器"进行交互。

通过正向代理服务器访问目标服务器,目标服务器是不知道真正的客户端是谁的,甚至不知道访问自己的是一个代理(有时候中介也直接冒充租客)。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

正向代理的用途

突破访问限制 

通过代理服务器,可以突破自身IP访问限制,访问国外网站,教育网等。

即,租客可以通过中介,来解决无法联系上房东的问题。

提高访问速度

通常代理服务器都设置一个较大的硬盘缓冲区,会将部分请求的响应保存到缓冲区中,当其他用户再访问相同的信息时, 则直接由缓冲区中取出信息,传给用户,以提高访问速度。

即,中介手里留存了很多房源信息和钥匙,可以直接带租客去看房。

隐藏客户端真实IP

上网者也可以通过这种方法隐藏自己的IP,免受攻击。

即,房东并不知道租客的真实身份。PS:但是中介知道了,可能骚扰更多….

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

反向代理

反向代理(reverse proxy):是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。

我们在租房子的过程中,除了有些房源需要通过中介以外,还有一些是可以直接通过房东来租的。用户直接找到房东租房的这种情况就是我们不使用代理直接访问国内的网站的情况。

还有一种情况,就是我们以为我们接触的是房东,其实有时候也有可能并非房主本人,有可能是他的亲戚、朋友,甚至是二房东。但是我们并不知道和我们沟通的并不是真正的房东。这种帮助真正的房主租房的二房东其实就是反向代理服务器。这个过程就是反向代理。

对于常用的场景,就是我们在Web开发中用到的负载均衡服务器(二房东),客户端(租客)发送请求到负载均衡服务器(二房东)上,负载均衡服务器(二房东)再把请求转发给一台真正的服务器(房东)来执行,再把执行结果返回给客户端(租客)。

640?wx_fmt=png
 所以,反向代理,其实是"代理服务器"代理了"目标服务器",去和"客户端"进行交互。

通过反向代理服务器访问目标服务器时,客户端是不知道真正的目标服务器是谁的,甚至不知道自己访问的是一个代理。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

反向代理的用途

隐藏服务器真实IP

使用反向代理,可以对客户端隐藏服务器的IP地址。

即,租客并不房东知道的真实身份。

负载均衡

反向代理服务器可以做负载均衡,根据所有真实服务器的负载情况,将客户端请求分发到不同的真实服务器上。

即,二房东发现房主本人很忙,于是找到房主的妻子帮忙处理租房事宜。

提高访问速度

反向代理服务器可以对于静态内容及短时间内有大量访问请求的动态内容提供缓存服务,提高访问速度。

即,二房东同样有房屋信息和钥匙。

提供安全保障

反向代理服务器可以作为应用层防火墙,为网站提供对基于Web的攻击行为(例如DoS/DDoS)的防护,更容易排查恶意软件等。还可以为后端服务器统一提供加密和SSL加速(如SSL终端代理),提供HTTP访问认证等。

即,二房东可以有效的保护房东的安全。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

正向代理和反向代理的区别

虽然正向代理服务器和反向代理服务器所处的位置都是客户端和真实服务器之间,所做的事情也都是把客户端的请求转发给服务器,再把服务器的响应转发给客户端,但是二者之间还是有一定的差异的。

1、正向代理其实是客户端的代理,帮助客户端访问其无法访问的服务器资源。反向代理则是服务器的代理,帮助服务器做负载均衡,安全防护等。

2、正向代理一般是客户端架设的,比如在自己的机器上安装一个代理软件。而反向代理一般是服务器架设的,比如在自己的机器集群中部署一个反向代理服务器。

3、正向代理中,服务器不知道真正的客户端到底是谁,以为访问自己的就是真实的客户端。而在反向代理中,客户端不知道真正的服务器是谁,以为自己访问的就是真实的服务器。

4、正向代理和反向代理的作用和目的不同。正向代理主要是用来解决访问限制问题。而反向代理则是提供负载均衡、安全防护等作用。二者均能提高访问速度。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg


推荐阅读:


640?wx_fmt=jpeg
JQ8900语音播报模块在RT-Thread系统下的驱动移植与测试详解 本文详细讲解了如何在RT-Thread嵌入式操作系统中,为JQ8900语音播报模块进行驱动移植与功能测试。内容涵盖从获取驱动代码、配置Kconfig工程、编译烧录到核心代码解析的完整流程,并提供了基于串口通信的上电测试与问题排查方法,帮助开发者快速掌握在RT-Thread系统下集成外部模块的核心技能。 阅读详情

相关推荐

体验灵雀云-创建基于Docker的云服务

今天体验了一下灵雀云,创建了第一个基于Docker的云服务。 1.登录灵雀云 2.开始使用 登录之后,从"控制台"进入操作界面,开始创建服务。 首先需要选择一个镜像。灵雀云已经为您提供了一些常用的镜像列表。请在“常用镜像”列表中,选择“其它”,然后找到“alauda/hello-world”镜像,点击它右侧的“选择”按钮,进入服务参数配置页面。 选择完要创建的

tomcat的专栏 3234

正向代理和反向代理详解(纯小白必看 最好懂的白话文教程)

我不做人了 jojo

笨蛋二刺猿 1万+

告别第三方插件:官方Fused Library如何重塑Android库的合并与发布流程

本文详细介绍了Android官方推出的Fused Library如何替代第三方fat-aar插件,优化Android库的合并与发布流程。通过原生支持、智能依赖管理等优势,Fused Library解决了版本兼容性、依赖传递等核心痛点,提供了更稳定高效的开发体验。文章还提供了迁移实操指南和工程实践建议,帮助开发者顺利过渡到官方方案。

weixin_42561040的博客 254

正向代理和反向代理通俗解析

正向代理 也就是平常说的代理,他的工作原理就像一个跳板。简单的说,我是一个用户,我访问不了某网站,但是我能访问一个代理服务器,这个代理服务器呢,他能访问那个我不能访问的网站,于是我先连上代理服务器,告诉他我需要那个无法访问网站的内容,代理服务器去取回来,然后返回给我。从网站的角度,只在代理服务器来取内容的时候有一次记录。结论就是,正向代理,是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转

weixin_44388697的博客 2274

eNSP网络构建—建立小型局域网

企业私有网络构建运维 实战案例——使用模拟器构建局域网络 案例分析 1.架构分析 (1)需求分析 本实验的目的在于建立小型局域网。由于公司由不同部门组成,并分布在不同地点,因此需要划分不同网络实现互联互通。设计以下网络:两个部门各使用一台交换机连接,然后连接到总交换机,再通过路由器与外网以及其他部门网络相连。为了控制网络上的广播风暴,增加网络的安全性,在交换机上需要设置VLAN,在路由器与交换机之...

_ 4万+

黑群晖二合一已损毁_手动修复黑群晖已损毁磁盘空间

lz的用法是这样的,一个中古级mac mini 2011上装有vmware esxi 7.6, 然后上面挂载了lz的华芸Asustor Nas的iscsi空间,lz用的是basic volume,然后esxi上面有虚拟的黑群晖6.2.2-24922,黑群晖的docker里跑着不可描述软件,但是发现下载速度过快时,比如有好几个文件同时下载,总速度超过60MB/s以后storage manager里很...

weixin_39669629的博客 1万+

用最通俗易懂方式带你了解-正向代理和反向代理

一、代理是个什么玩意 &nsbp; 生活中,就有许多代理的身份,有时候我们做一些事情不方便的时候,就会叫人帮忙,比如说代购,我去不了香港,不能叫别人帮我买吗,不好意思跟心上人告白,就需要找她闺蜜来间接告白,想买二手车,找不到卖家?来某子二手车直卖网,没有中间商赚差价。事情太多了做不完,把接到的需求分一些给下面的,赋权让手下的兄弟去做 上面的例子,其实都是代理,一个喜欢当中间商的孩子 二、代理的多种身份 一般来说,代理的身份主要有两种,正向代理和反向代理 2.1 正向代理  &nb

MClink的博客 1372

STM32F407与AD7766实战:如何用SPI+DMA实现高速ADC数据采集(附完整代码)

本文详细介绍了如何利用STM32F407的SPI接口与DMA控制器,高效稳定地驱动24位高精度ADC芯片AD7766,实现高速连续数据采集。通过对比传统中断方式的瓶颈,阐述了SPI+DMA方案如何大幅降低CPU负载,并提供了从硬件设计、CubeMX配置到核心驱动代码的完整实战指南,帮助工程师解决高速ADC数据采集中的性能难题。

weixin_29281941的博客 188

正向代理和反向代理有什么区别?什么是正向代理?什么是反向代理?正向代理和反向代理详解。

但是二者的区别在于正向代理时用户知道自己访问的是代理服务器,而反向代理是无感知的,用户本质上是不知道自己访问的是代理服务器。当用户想访问某一网址时,用户先访问代理服务器,然后由代理服务器向目标网址发送请求最终将数据返回代理服务器,最后代理服务器将数据返回给用户这一过程我们称之为正向代理。代理服务器提供了一个很大的缓冲区将部分请求的响应保存到缓冲区中,当其他用户再访问相同的信息时, 则直接由缓冲区中取出信息,传给用户,以提高访问速度。2、正向代理是客户端架构,而反向代理是服务器架构。

weixin_60414376的博客 8684

YOLOv11与CLIP融合的零样本目标检测技术:原理、实现与创新实践

YOLO(You Only Look Once)系列作为单阶段检测器的代表,以其实时高效的特性在工业界获得广泛应用。YOLOv11作为该系列的最新演进,引入了多项架构创新: C3K2模块:采用双小卷积核替代传统大卷积核,在保持感受野的同时减少计算量。当参数c3k=False时退化为YOLOv8的C2F模块,提供灵活的精度-效率权衡。 C2PSA(Convolutional block with Parallel Spatial Attention):通过并行空间注意力机制增强对微小目标的特征提取能力,这对

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 1068

基于Transformer模型实现交通流量时序预测(PyTorch版)

Transformer模型,作为一种基于自注意力机制的深度学习模型,最初在自然语言处理领域取得了突破性进展,其出色的长距离依赖关系捕捉能力使其在处理时序数据时也表现出色。将Transformer模型应用于交通流量时序预测,可以充分利用其优势,实现对交通流量更加精准、高效的预测。

时序笔记 2571

通俗理解正向代理与反向代理:一篇就够!

在学习网络架构、配置 Nginx 或理解 VPN 原理时,我们常常会听到两个概念:**正向代理** 和 **反向代理**。 它们看起来类似,实际上工作方式和应用场景大不相同。

hutao8896的博客 679

Python爬虫教程:抓取Android或iOS应用中的数据

随着智能手机的普及,移动应用程序已经成为我们生活中不可或缺的一部分。从社交媒体、在线购物到金融服务和健康管理,几乎所有领域都有相应的手机应用程序(App)服务用户。而这些应用程序通常会存储大量的数据,例如用户行为、产品信息、订单记录等。如果我们能有效地抓取这些数据,可以为数据分析、商业智能、用户行为分析等提供有力支持。本文将重点介绍如何使用Python爬虫技术抓取Android或iOS应用中的数据,尤其是如何从这些应用的后端接口、存储、或网页中提取数据。我们将探讨如何通过反向工程技术访问移动应用中的API接

2201_76125261的博客 801

漫话:如何给女朋友解释什么是反向代理、正向代理?

周末,我正在网上搜索简历,准备给团队招聘新人。这时候,女朋友回来了,看起来并不是很高兴。 反向代理(reverse proxy):是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 正向代理 正向代理(forward proxy):是一个位于客户端和目标服务器之间的服务器(代理服务器),为了从目标服务器取得内容,客户端向代理服务器发送一个请求.

AI架构师易筋 427

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

漫画:如何给女朋友解释什么是反向代理?

<div class="rich_media_content" id="js_content"> <p style="m

IT_EZRA的博客 254

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

反向代理|RPC|分布式 集群|HTTP

自学转载,解释的很清楚:侵删。

weixin_40772077的博客 104

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

漫画:如何给女朋友解释什么是编译与反编译

本文经授权转载自漫话编程(ID:mhcoding) 某天下班后,我在家里进行电话面试,问到面试者这样一个问题:"你知道使用哪些办法可以反编译Java代码吗?"。但是面试者回答的并不好,所以我在面试评价中写到:"对编译原理相关知识理解的不透彻"。这时,女朋友看到这句话。 计算机语言 计算机语言(Computer Language)指用于人与计算机之间通...

程序人生的博客 1246

终于有人把正向代理和反向代理解释的明明白白了!

来源:漫话编程(ID:mhcoding)周末,我正在网上搜索简历,准备给团队招聘新人。这时候,女朋友回来了,看起来并不是很高兴。反向代理(reverse proxy):是...

Java团长的博客 1106

如何理解正向代理和反向代理

微信公众号看到一篇文章《漫话:如何给女朋友解释反向代理?》,有些启发。 基本概念就不解释了,见这个文章。 简单小结 如下图:

玄大冰 336

jsliang 求职系列 - 25 - 计算机网络基础

一 目录 不折腾的前端,和咸鱼有什么区别目录一 目录二 前言三 计算机网络基础 3.1 计算机网络体系结构四 正向代理和反向代理 4.1 正向代理 4.2 反向代理五 CDN六 参考文献...

weixin_41806099的博客 248

如果要将对象用作Map中的key,需要注意什么

点击上方“方志朋”,选择“置顶公众号”技术文章第一时间送达!本文阅读时间大约5分钟。参考答案如果将对象作为Map中的key,需要是实现该对象的equals方法和hashCode方法;现在一...

方志朋的博客 649

mysql 一对多 根据多条数据排序_为什么MySQL数据库要用B+树存储索引?

“小史是一个应届生,虽然学的是电子专业,但是自己业余时间看了很多互联网与编程方面的书,一心想进 BAT 互联网公司。话说两个多月前,小史通过了A厂的一面,两个多月后的今天,小史终于等到了A厂的二面。在简单的自我介绍后,面试官看了看小史的简历,开始发问了。面试现场小史:没问题,这个项目前端用的React+Webpack,后端用的Nginx+Spring Boot+Redis+M...

weixin_39648297的博客 64

「民工哥技术之路」2019年 8-9 月文章集合

点击上方“民工哥技术之路”选择“星标”每天为你分享不一样的干货读者福利!多达 2048G 各种资源免费赠送以下是8月份文章集合「点击标题跳转阅读」:不小心执行了 rm -f,先别急着跑...

民工哥的博客 976
上一篇: 从零开始学TensorFlow【01-搭建环境、HelloWorld篇】
下一篇: 从零开始学TensorFlow【什么是TensorFlow?】
Java3y
Java3y 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄9年 1万+粉丝 509原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值