博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
正向代理和反向代理
阅读量:6413 次
发布时间:2019-06-23

本文共 1120 字,大约阅读时间需要 3 分钟。

正向代理:注意所有用户使用一个代理和服务器交互 1)用户希望代理服务器帮助自己,和要访问服务器通信,为了实现此目标,需要以下工作: 用户IP报文的目的IP = 代理服务器IPb) 用户报文端口号 = 代理服务器监听端口号c) HTTP 消息里的URL要提供服务器的链接 2)代理服务器可以根据c)里的链接与服务器直接通信 3)服务器返回网页 4)代理服务器打包3)中的网页,返回用户。 反向代理:用户直接和服务器代理交互,但是其实并不是一个服务器 1)需要有一个负载均衡设备来分发用户请求,将用户请求分发到空闲的服务器上 2)服务器返回自己的服务到负载均衡设备 3)负载均衡将服务器的服务返回用户 以上的潜台词是: 用户和负载均衡设备直接通信,也意味着用户做服务器域名解析时, 解析得到的IP其实是负载均衡的IP,而不是服务器的IP, 这样有一个好处是,当新加入/移走服务器时,仅仅需要修改负载均衡的服务器列表,而不会影响现有的服务。 有些大公司不想让别人知道自己主服务器的位置。 其实就是在计算机世界里,由于单个服务器的处理客户端(用户)请求能力有一个极限, 当用户的接入请求蜂拥而入时,会造成服务器忙不过来的局面, 可以使用多个服务器来共同分担成千上万的用户请求,这些服务器提供相同的服务, 对于用户来说,根本感觉不到任何差别。 正向代理中,proxy和client同属一个LAN,对server透明; 反向代理中,proxy和server同属一个LAN,对client透明。 实际上proxy在两种代理中做的事都是代为收发请求和响应, 不过从结构上来看正好左右互换了下,所以把后出现的那种代理方式叫成了反向代理。 他具有缓存、安全、负载均衡等作用,反向代理是和服务器集群在一起的,并且知道集群的内部情况。 所谓反向代理基本上就是一个服务端的负载均衡器。 正向代理:代理端代理的是客户端。 反向代理:代理端代理的是服务端。 一个是代理(v)客户端,为客户端收发请求,使真实客户端对服务器不可见。 一个是代理(v)服务器,为服务器收发请求,使真实服务器对客户端不可见。 普通代理,forward proxy,是服务于特定用户(比如说一个公司内 / 一个局域网内的客户)以访问非特定的服务; 反向代理,reverse proxy,是服务于非特定用户(对于公开互联网服务而言,通常是所有用户)以访问特定的服务。 这个图最能说明问题:

 

 

自己看总链接:https://www.zhihu.com/question/24723688

 

转载于:https://www.cnblogs.com/adamans/articles/6891049.html

你可能感兴趣的文章
在Winform程序中设置管理员权限及为用户组添加写入权限
查看>>
RTMP直播到FMS中的AAC音频直播
查看>>
多能互补提速 加快我国能源转型和现代能源体系建设
查看>>
音乐闹钟
查看>>
Java 并发编程:线程间的协作(wait/notify/sleep/yield/join)
查看>>
9.2 空间拓扑运算[转]
查看>>
监控视频相关数据集
查看>>
(转)android UI进阶之弹窗的使用(2)--实现通讯录的弹窗效果
查看>>
面试经典-设计包含min函数的栈
查看>>
linux下php添加cur/soapl扩展
查看>>
【百度地图API】多家地图API文件大小对比
查看>>
也可以使用如下命令更改您的默认 Shell
查看>>
Windows系统中IIS 6.0+Tomcat服务器环境的整合配置过程
查看>>
2015-03-15
查看>>
Node.js HTTP Server对象及GET、POST请求
查看>>
"npm ERR! Error: EPERM: operation not permitted"问题解决
查看>>
linux tar包追加问题【转】
查看>>
Git_忽略特殊文件
查看>>
spring 手动添加 bean 到容器,例子 :多数据源配置
查看>>
ASP.NET的URL过滤
查看>>