很久以前,老王去饭店吃饭,需要先到饭店,七荤八素点好菜,坐等饭菜上桌,然后大快朵颐,不亦乐乎。

有了第三方订餐外卖平台(代理),老王懒得动身前往饭店,老王打个电话或用APP,先选好某个饭店,再点好菜,外卖小哥会送上门来。

由于某个品牌的饭店口碑特别好,食客络绎不绝涌入,第三方订餐电话也不绝于耳,但是限于饭店接待能力有限,无法提供及时服务,很多食客等得不耐烦了,纷纷铩羽而归,饭店老总看着煮熟的鸭子飞走了,心疼不已。

痛定思痛,老总又成立了几个连锁饭店,形成一个集群,对外提供统一标准的菜品服务,电话订餐电话400-xxx-7777,当食客涌入饭店总台,总台将食客用大巴运到各个连锁店,这样食客既不需要排队,各连锁店都能高速运转起来,一举两得,老总乐开了花,并为此种运作模式起名为“反向代理”(Reverse Proxy)。

反向代理
在计算机世界里,由于单个服务器的处理客户端(用户)请求能力有一个极限,当用户的接入请求蜂拥而入时,会造成服务器忙不过来的局面,可以使用多个服务器来共同分担成千上万的用户请求,这些服务器提供相同的服务,对于用户来说,根本感觉不到任何差别。

反向代理的实现
1)需要有一个负载均衡设备来分发用户请求,将用户请求分发到空闲的服务器上

2)服务器返回自己的服务到负载均衡设备

3)负载均衡将服务器的服务返回用户

以上的潜台词是:用户和负载均衡设备直接通信,也意味着用户做服务器域名解析时,解析得到的IP其实是负载均衡的IP,而不是服务器的IP,这样有一个好处是,当新加入/移走服务器时,仅仅需要修改负载均衡的服务器列表,而不会影响现有的服务。

谈完反向代理服务,再来谈谈终端用户常用的代理服务。

代理
1)用户希望代理服务器帮助自己,和要访问服务器通信,为了实现此目标,需要以下工作:

a) 用户IP报文的目的IP = 代理服务器IP
b) 用户报文端口号 = 代理服务器监听端口号
c) HTTP 消息里的URL要提供服务器的链接

2)代理服务器可以根据c)里的链接与服务器直接通信

3)服务器返回网页

4)代理服务器打包3)中的网页,返回用户。

代理服务器应用场景
场景一
如果不采用代理,用户的IP、端口号直接暴露在Internet(尽管地址转换NAT),外部主机依然可以根据IP、端口号来开采主机安全漏洞,所以在企业网,一般都是采用代理服务器访问互联网。

那有同学会有疑问,那代理服务器就没有安全漏洞吗?
相比千千万万的用户主机,代理服务器数量有限,修补安全漏洞更方便快捷。

场景二
在一个家庭局域网,家长觉得外部的世界是洪水猛兽,为了不让小盆友们学坏,决定不让小盆友们访问一些网站,可小盆友们有强烈的逆反心理,侬越是不让我看,我越是想看,于是小盆友们使用了代理服务器,这些代理服务器将禁止访问的网页打包好,然后再转交给小盆友,仅此而已。

当然关键的关键是代理服务器不在禁止名单当中!

作者:车小胖
链接:https://www.zhihu.com/question/24723688/answer/160252724

正向代理中,proxy和client同属一个LAN,对server透明;
反向代理中,proxy和server同属一个LAN,对client透明。
实际上proxy在两种代理中做的事都是代为收发请求和响应,不过从结构上来看正好左右互换了下,所以把后出现的那种代理方式叫成了反向代理。

作者:阿笠硕士
链接:https://www.zhihu.com/question/24723688/answer/48369770

来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

转载于:https://www.cnblogs.com/bad-man/p/7832241.html

【转载】反向代理为何叫反向代理?相关推荐

  1. 用nginx TCP反向代理作mail邮件代理

    用nginx TCP反向代理作mail邮件代理 用nginx TCP反向代理作mail邮件代理 1. 背景 2. Nginx安装(包括nginx_upstream_check_module) 3. N ...

  2. 使用ssh正向连接、反向连接、做socks代理的方法

    文章出处:http://dzmailbox.blog.163.com/blog/static/120534385201232642637847/ 最近才发现ssh有多么的强大! 在网上搜了半天,发现大 ...

  3. Squid服务器应用(Squid传统代理、Squid透明代理、ACL访问控制、Squid日志分析、Squid反向代理)

    文章目录 一.缓存代理概述 二.Squid代理服务器 三.代理的工作机制 四.Squid代理的类型 五.部署Squid代理服务器步骤 (一).安装Squid服务 (二).构建传统代理服务器 (三).构 ...

  4. Nginx代理——正向、反向代理,动静分离和负载均衡

    文章目录 一.Nginx代理概述 (1)什么是正向代理和反向代理 -正向代理: -反向代理 -反向代理和正向代理的区别 (2)配置代理 -Nginx代理配置语法 -配置正向代理 -Nginx反向代理示 ...

  5. 负载均衡 反向代理为何叫反向代理?

    转  https://www.zhihu.com/question/24723688 与正向代理比起来,反向代理是什么东西反向了? 关注者 1217 被浏览 184352 41 个回答 刘志军 公众号 ...

  6. 【网站架构】Nginx 4层、7层代理配置,正向代理、反向代理详解

    大家好,欢迎来到停止重构的频道. 本期我们讨论网络代理. 在往期<大型网站 安全性>介绍过,出于网络安全的考虑,一般大型网站都需要做网络区域隔离,以防止攻击者直接操控服务器. 网站系统的应 ...

  7. nginx反向代理以及nginx反向代理三种方式

    nginx反向代理的三种模式分别是: 一.正向代理(Forward Proxy) 二.反向代理(reverse proxy) 三.透明代理 Nginx性能很高的,尤其是作为一个代理服务器,因为它用的是 ...

  8. squid 代理服务器--传统模式、代理模式、反向代理、acl控制、sarg日志(实验+理论详解)

    文章目录 一.squid 概述 二.传统dl搭建 2.1.实验环境 2.2.实验过程 2.2.1.部署squid 服务 2.2.2.配置传统模式 2.2.3.真机测试 三.透明dl搭建 3.1.实验环 ...

  9. 你需要知道的前端跨域知识(同源、正向代理、反向代理、前端代理、nignx反向代理)

    你需要知道的前端跨域知识(同源.正向代理.反向代理.前端代理.nignx反向代理) 一.什么是跨域? 当一个请求url的协议名.主机号.端口号三者任意一个或多个与当前url不同,即可称为跨域. 二.为 ...

  10. 架构师聊的四层代理和七层代理,都在聊什么?

    日常与大佬沟通或看文章,时不时总会遇到两个概念"四层代理负载均衡"和"七层代理负载均衡",那么,所谓的四层代理和七层代理分别指的是什么?又在什么场景下用到呢?这 ...

最新文章

  1. nodejs笔记-异步编程
  2. python的dict实现
  3. Struts中Action三种接收参数的方式?
  4. Python os.walk() 方法--输出在目录中的文件名
  5. linux系统下部署go语言环境
  6. Android开发之广播
  7. 笔记--《谷歌和亚马逊是怎么做产品的》第一至三章
  8. dwcs6连接不上access数据库_dw连接access数据库的技巧
  9. Eclipse的下载与安装以及JDK环境的配置
  10. Three.js杂记(十一)—— 精灵与粒子(绘制中国地图)
  11. 《指弹:The Sprinter》
  12. 毕业设计 单片机心率检测器设计与实现 - stm32
  13. 第1章 机器学习基础
  14. 软考哪个证书最有用?
  15. 【PS】61款中国风古典背景水墨山水古风韵味PSD分层设计素材
  16. textcnn文本词向量_基于Text-CNN模型的中文文本分类实战
  17. pthon之异常、文件练习题
  18. u盘装红帽子6.5系统linux,哪位大神会用红帽子6.5版本的linux系统
  19. Java 老矣,尚能饭否? 1
  20. 安装java1.6_JAVA1.6怎么安装

热门文章

  1. 用人工智能监督人工 遭遇非技术困局
  2. 学自动化必知:20个传感器原理及应用动图
  3. 人类正在进入超级智能时代,论一种新超级智能的崛起
  4. 首张人类黑洞照片的背后
  5. AIoT的生死局:未来的AIoT很赚钱,但目前的AI+IoT很花钱
  6. 「对抗深度强化学习」是如何解决自动驾驶汽车系统中的「安全性」问题的?...
  7. 来认识世界上第一支AI基金:模仿股票分析师 365天无间断工作
  8. 人类“换头术”现在就是一场炒作 但医学界不会放弃研究
  9. @2021 高考生,用 Python 分析专业“钱景”
  10. sj 网页前端与后台数据交互的3种方式