1. 程式人生 > >java的正向代理和反向代理

java的正向代理和反向代理

一、正向代理

在我們生活中有很多代理的例子:

        租房子找中介,中介就是一個代理。

        打掃房屋找清潔公司,清潔公司就是一個代理。

        相親找媒婆,媒婆就是一個代理。

要了解java的正向代理先來看以下的一個例子:

        我是一個使用者A,訪問不了某網站(伺服器B),但是我能訪問一個代理伺服器Z,而這個代理伺服器Z能訪問那個我不能訪問的網站(伺服器B)。於是我先連上代理伺服器,告訴他我需要那個我無法訪問的網站上的內容,然後讓代理伺服器去取回來,最後返回給我。


                                              正向代理示意圖

二、反向代理

        初次接觸反向代理的感覺是,客戶端是無感知代理的存在的,反向代理對外都是透明的,訪問者並不知道自己訪問的是一個代理。因為客戶端不需要任何配置就可以訪問。

        反向代理實際執行方式是指以代理伺服器來接受Internet上的連線請求,然後將請求轉發給內部網路上的伺服器,並將從伺服器上得到的結果返回給Internet上請求連線的客戶端,此時代理伺服器對外就表現為一個伺服器。

                                正向代理代理的是客戶端,反向代理代理的是伺服器。