首页 > 代码库 > 正向代理与反向代理

正向代理与反向代理

看到“正向代理”和“反向代理”这两个名词时,搞不懂什么意思,查了一下资料 整理下来

正向代理:

举例: 某个产品的生产厂家不支持零售(既生产厂家不直接对接买家),而代理商先在厂家购入货物,再进行零售(既代理商对接买家)。
这里的代理商是代理客户端,买家是真正的客户端。
这个过程中,真正买商品的人是谁,厂家是不知道的。

 

server(生产厂家)
       |
       |
    proxy(代理商)
       |
       |
    client(买家)

 

正向代理代理的对象是客户端,正向代理的过程隐藏了真实的请求客户端,
服务端不知道真实的客户端是谁,客户端的请求都被代理服务器代理来请求。


反向代理:

举例:招行的客服电话95555,客服的电话号码只有1个,而可以接听这个电话号码的客服人员有若干个。
这里的客服电话是代理服务器,客服人员是真正的服务器。
这个过程中,真正提供服务的是谁,请求者是不知道的。

 

server1(客服人员1)、server2(客服人员2)、server3(客服人员3)... servern(客服人员n)
      |
      |
proxy server(客服电话95555,反向代理服务器)
      |
      |
client(打客服电话的人)


反向代理隐藏了真实的服务端,当我们拨打95555时,背后可能有成千上万的客服人员为我们服务。
我们无需知道为我们提供帮助的那个客服人员的姓名、性别、身高、学历等等信息,我们只要知道客服电话号码就可以了。
客服电话就是反向代理服务器,拨打客服电话后,反向代理服务器会帮我们把请求转到真实的服务器那里。

 

综上:
正向代理 代理的是客户端;
反向代理 代理的是服务端。

 

正向代理与反向代理