91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Nginx專題(1):Nginx之反向代理及配置

發布時間:2020-06-29 14:23:27 來源:網絡 閱讀:2708 作者:宜信技術 欄目:系統運維

摘要:本文從Nginx的概念出發,分別從反向代理的概念、優勢、配置代碼3個方面介紹了Nginx的特性之一反向代理。

文章來源:宜信技術學院 & 宜信支付結算團隊技術分享第一期-宜信支付結算八方數據團隊高級技術經理 周恒《Nginx的細枝末節》

分享者:宜信支付結算八方數據團隊高級技術經理 周恒

原文首發于支付結算技術團隊公號:野指針

一、Nginx概念解讀

對于新事物的理解,最好的方式就是從概念入手,本文作為《Nginx專題》系列文章的第一篇,先從Nginx的名稱開始來分解這個神秘的引擎。

Nginx,是engine X的縮寫,發音也是'engine x',2004年由俄羅斯大神伊戈爾·賽索耶夫開發,提供了高性能而易用的HTTP反向代理功能。后期還加入了TCP的反向代理支持。

最初Nginx是為了解決早年的C10K問題而生的。什么是C10K呢?C代表Client客戶、10K代表10000,即一臺服務器同時保持1萬鏈接。這在當時是一個非常棘手的問題。

通過Google搜索Nginx會得到以下解釋:

Nginx是異步框架的網頁服務器,也可以用作反向代理、負載平衡器和HTTP緩存。

從這句話中,我們可以得到下面幾個關鍵:

本專題文章將分別從這幾個關鍵詞來解讀Nginx的強大之處。本文先介紹Nginx特性之反向代理及其配置實現。?

二、反向代理

2.1 什么是反向代理

代理在生活中非常常見,房屋中介是代理、終端零售是代理、選舉代表是代理。這些代理都可以幫助需求方減輕很多工作的復雜度,提升效率和體驗。

網絡里的代理服務是什么樣子,我想各位讀者也非常清楚,這里再簡單回顧一下:假設我們想在公司上網看B站的視頻,而規范的公司出于安全和辦公效率的考慮,設置了網絡策略,不允許訪問視頻網站,聰明的程序員不可能被這些事情所打敗,只要購買一臺云服務,搭建代理服務,把瀏覽器設置上代理,就可以輕松訪問視頻網站。這就是常見的代理。

Nginx專題(1):Nginx之反向代理及配置

那么現在問題來了:“代理”大家都懂,這里為什么強調是反向代理呢?難道還有正向代理?答案是肯定的。

正向代理就是大家常見的代理,以請求端也就是客戶端的角度為正向,用戶發出請求經過的代理,稱為“正向代理”。這時是用戶主動選擇使用代理。

反向代理:先看圖再解釋。

Nginx專題(1):Nginx之反向代理及配置

主動權被反轉,原來是客戶端選擇代理,現在是代理選擇服務端節點。由于控制權的反轉,這樣的代理被稱為“反向代理”。

2.2 反向代理的優點

1)保護服務安全

  • 隱藏服務節點的IP;
  • 將服務節點置于防火墻之后,避免直接攻ji業務節點服務器。

2)服務節點更專注于業務,同時提升性能

  • 由于有反向代理的存在,可以讓反向代理服務器去實現比如https、gzip壓縮等與業務無關的功能;
  • 提供動靜態分離,將靜態文件發往靜態服務器或本地文件系統,避免業務節點處理這些與業務無關的請求;
  • 提供緩存機制,將一些短時間內不會變化的動態內容,在反向代理服務器這層增加緩存,降低業務服務器的請求量;
  • 由于控制權在代理服務這邊,完全可以根據服務節點的性能動態分配請求,做到服務節點性能最佳。

正是由于Ngxin引入了反向代理的特性,讓請求和響應都要經過Nginx,因此給Nginx帶來了非常多的可能。比如負載均衡、HTTP緩存等。

Nginx專題(1):Nginx之反向代理及配置

三、反向代理的配置

Nginx中關于反向代理的配置相當簡單。

3.1 配置一個單節點的反向代理

# simple reverse-proxy
server { 
    listen       80;
    server_name  big.server.com;
    access_log   logs/big.server.access.log  main;

    # pass requests for dynamic content to rails/turbogears/zope, et al
    location / {
      proxy_pass      http://127.0.0.1:8080;
    }
  }

這里定義的規則是以big.server.com域名來請求Nginx的80端口,會將請求代理到127.0.0.1:8080上。

3.2 配置一組反向代理的服務節點。

1)配置一組反向代理并命名。

upstream big_server_com {
    server 192.168.0.1:8000;
    server 192.168.0.1:8001;
}

這里定義了upstream,這個upstream可以理解為上傳流,之所以叫上傳是因為:從服務器獲取數據叫下載,向服務器發送數據就叫上傳,這里是將數據請求發送到服務節點,所以叫上傳。

給這組服務節點命名為big_server_com,其中包括兩個節點,分別是:192.168.0.1:8000和192.168.0.1:8001。

2)配置規則:讓滿足的請求能夠反向代理到這組服務節點中。

server { 
    listen          80;
    server_name     big.server.com;
    access_log      logs/big.server.access.log main;

    location / {
      proxy_pass      http://big_server_com;
    }
  }

這里定義的規則是以big.server.com域名來請求Nginx的80端口,請求url是以/為后綴的所有請求,都會轉發到前面定義的名字為big_server_com的服務節點組。

四、總結

本文從Nginx的概念出發,分別從反向代理的概念、優勢、配置代碼3個方面介紹了Nginx的特性之一反向代理。后續文章將繼續介紹Nginx的另外三個特性:負載均衡、HTTP緩存、異步框架,敬請期待。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新民市| 巴林右旗| 浮梁县| 托克逊县| 天水市| 佳木斯市| 沧州市| 金堂县| 三明市| 东至县| 沽源县| 米易县| 托里县| 大田县| 罗江县| 黄大仙区| 卢湾区| 都昌县| 襄城县| 清新县| 客服| 木里| 乌鲁木齐县| 肥乡县| 广灵县| 鲜城| 台北县| 金堂县| 罗江县| 台安县| 桃园市| 丽水市| 泾川县| 阆中市| 杨浦区| 甘孜县| 海城市| 栾川县| 锡林郭勒盟| 道真| 磐石市|