天天看點

正向代理與反向代理的差別

在計算機世界,代理可分為正向代理和反向代理,比如著名的FQ軟體Shadowsocks就是一款正向代理軟體,全世界前1000的高流量網站都在用的Web伺服器Nginx作為反向代理伺服器,那麼兩者之間究竟有什麼差別?

1.正向代理

拿借錢打個比方,A想向C借錢,但是C不認識A是以不借給他,然後A就通過B向C借錢,B借到錢之後再轉交給A,在這個過程中B就扮演了一個正向代理的角色,這個過程中,真正借錢的人是誰,C是不知道的~

我們常說的代理也就是指正向代理,正向代理的過程,它隐藏了真實的請求用戶端,服務端不知道真實的用戶端是誰,用戶端請求的服務都被代理伺服器代替來請求,科學上網工具 Shadowsocks 扮演的就是典型的正向代理角色。

比如我想通路www.google.com,要想翻越這堵牆,你可以在國外用Shadowsocks來搭建一台代理伺服器,代理幫我們請求www.google.com,代理再把請求響應結果再傳回給我。

正向代理與反向代理的差別

2.反向代理

還用借錢的例子,A想向C借錢,然後C借給他了,但是實際上這個錢可能C向B借的~至于錢到底是誰的,A是不知道的~

這裡的C扮演着一個反向代理的角色,客戶不知道真正提供服務的人是誰。

反向代理隐藏了真實的服務端,當我們通路www.baidu.com的時候,背後可能有成千上萬台伺服器為我們服務,但具體是哪一台,你不知道,也不需要知道,你隻需要知道反向代理伺服器是誰就好了。www.baidu.com就是我們的反向代理伺服器,反向代理伺服器會幫我們把請求轉發到提供真實服務的伺服器那裡去。Nginx就是性能非常好的反向代理伺服器,它可以用來做負載均衡。

繼續閱讀