正向代理
- 概念:正向代理是一個位于客戶端和目標服務器之間的代理服務器(中間服務器)。為了從目標服務器取得內容,客戶端向代理服務器發送一個請求,并且指定目標服務器,之后代理向目標服務器轉發請求,將獲得的內容返回給客戶端。
- 特點:
- 正向代理是代理客戶端,為客戶端收發請求,使真實客戶端對服務器不可見。
- 正向代理需要主動設置代理服務器ip或者域名進行訪問,由設置的服務器ip或者域名去訪問內容并返回。
- 好處:
- 突破訪問限制:通過代理服務器,可以突破自身ip的訪問限制,訪問國外網站等。
- 提高訪問速度:通常代理服務器都設置一個較大的硬盤緩沖區,會將部分請求的響應保存到緩沖區中,當其他用戶再訪問相同的信息時,則直接由緩沖區中取出信息,傳給用戶,以提高訪問速度。
- 隱藏客戶端真實ip:上網者可以通過正向代理的方法隱藏自己的ip,免受攻擊。
反向代理
- 概念:反向代理是指以代理服務器來接收客戶端的請求,然后將請求轉發給內部網絡上的服務器,將從服務器上得到的結果返回給客戶端,此時代理服務器對外表現為一個反向代理服務器。對于客戶端來說,反向代理就相當于目標服務器,只需要將反向代理當作目標服務器一樣發送請求就可以了,并且客戶端不需要進行任何設置。
- 特點:
- 反向代理不需要做任何設置。(正向代理需要配置代理服務器)
- 反向代理是代理服務器,為服務器收發請求,使真實服務器對客戶端不可見。
- 好處:
- 隱藏服務器真實ip:使用反向代理,可以對客戶端隱藏服務器的ip地址。
- 負載均衡:反向代理服務器可以做負載均衡,根據所有真實服務器的負載情況,將客戶端請求分發到不同的真實服務器上。
- 提高訪問速度:反向代理服務器可以對靜態內容及短時間內有大量訪問請求的動態內容提供緩存服務,從而提高訪問速度。
- 提供安全保障:反向代理服務器可以作為應用層防火墻,為網站提供對基于web的攻擊行為(例如DoS/DDoS)的防護,更容易排查惡意軟件等。還可以為后端服務器統一提供加密和SSL加速(如SSL終端代理),提供HTTP訪問認證等。
Nginx
- Nginx (engine x)是一個高性能的HTTP和反向代理web服務器,同時也提供了IMAP/POP3/SMTP服務。
- 其特點是占有內存少,并發能力強,事實上nginx的并發能力在同類型的網頁服務器中表現較好,中國大陸使用nginx網站用戶有:百度、京東、新浪、網易、騰訊、淘寶等,在全球活躍的網站中有12.18%的使用比率,大約為2220萬個網站。
- Nginx啟動特別容易,并且幾平可以做到7*24不間斷運行,即使運行數個月也不需要重新啟動。你還能夠不間斷服務的情況下進行軟件版本的升級。
- Nginx代碼完全用C語言從頭寫成。官方數據測試表明能夠支持高達 50,000 個并發連接數的響應。
Nginx 反向代理
- 就是將前端發送的動態請求由 nginx 轉發到后端服務器。
- 作用:反向代理、負載均衡、動靜分離:讓動態網站里的動態網頁根據一定規則把不變的資源和經常變的資源區分開來,動靜資源做好了拆分以后,我們就可以根據靜態資源的特點將其做緩存操作,提高資源響應的速度。
- 反向代理配置:
- 負載均衡配置:
- 負載均衡策略: