正向代理、反向代理和透明代理

代理實際上就是使客戶端不直接訪問目標服務器,而通過代理服務器去訪問目標服務器。爲什麼不直接訪問目標服務器呢,實際上使用代理的方式好處多多,下面就說說這幾種代理方式。

1.正向代理

客戶端向代理服務器發送一個請求並指定目標服務器,代理服務器接到請求後將請求轉發給目標服務器,目標服務器將相應發給代理服務器,代理服務器再將響應發給客戶端吧。這個過程中,着重強調是需要客戶端指定目標服務器,代理服務器才能知道到底要轉發給哪個目標服務器。

2.反向代理

和正向代理不同的是,客戶端向代理服務器發生請求,不需要指定目標服務器,由代理服務器根據策略自行選擇目標服務器。這個場景大部分出現在什麼地方呢,就是服務器集羣上。這裏拿應用服務器集羣來說,集羣中的應用服務器本質上部署的應用實例是一樣的,無論在哪個服務器上的都沒有差別,所以不需要額外的去指定目標服務器。如果要直接去訪問每臺應用服務器,那麼就需要用戶通過不同的域名或者ip地址去訪問,這樣還容易造成某個服務器負載嚴重,而某個服務器負載閒置,所以這裏客戶端就可以使用反向代理的方式來訪問集羣的服務器。於是客戶端就能通過代理服務器這一個服務器去訪問集羣的所有服務器了,代理服務器在轉發請求的時候還能根據策略進行負載均衡,確保每臺目標服務器都能有合理的負載。

3.透明代理

聽名字就大概知道這種代理方式的用途了。這種代理方式大部分用於行爲管理設備上,它會根據需要將客戶端發送的報文進行修改,而客戶端並不知道有這層代理。

 

4.使用代理的幾點好處

(1)目標服務器和客戶端之間不能進行網絡互通,這時候客戶端就可以使用代理服務器作爲跳板去訪問目標服務器。這挺類似在國內使用VPN去訪問國外網站。

(2)客戶端和目標服務器之間網絡質量不好。通過本區域的代理服務器去訪問,可以改善這一問題。

(3)可以在代理服務器上設置緩存,緩存命中就可以直接訪問,不需要再去訪問目標服務器。如果有獨立的緩存服務器,也可以是在代理服務器上先去緩存服務器上查詢緩存,查不到在將請求轉發給目標服務器。

(4)在代理服務器上緩存靜態資源,靜態資源一般是不會改變的。就不用去目標服務器上拿了。

(5)在代理服務器上進行身份驗證、權限認證、記錄日誌等等。

(6)對目標服務器進行保護。只有代理服務器能訪問目標服務器,其他地方的請求只有經過代理服務器過濾後才進來,自然保證了目標服務器的安全。

(7)還有一點就是上面說的可以在代理服務器上負載均衡的轉發請求到目標服務器。

 

原文出處:https://www.cnblogs.com/lin3615/p/5653234.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章