Nginx 基於Nginx的中介軟體架構

2021-08-19 23:13:23 字數 3782 閱讀 5234

1、io

2、輕量級

3、cpu親和(affinity)

cpu親和:是一種把cpu核心和nginx工作程序繫結方式,把每個worker程序固定在乙個cpu上執行,減少切換的cachemiss,獲得良好的效能。

4、sendfile

處理靜態檔案效率很高,因為他的傳輸機制是:sendfile。

對比之前httpserver的傳輸檔案。httpserver傳輸機制

檔案–》作業系統核心空間–>使用者空間–》socket;響應給使用者。 發生多次切換

檔案 其實不需要經過使用者空間(處理邏輯),直接就可以通過核心空間傳輸。sendfile就是只通過核心空間 進行傳輸。

參考官方文件介紹

基礎引數使用

省略

請求報文:

request- 包括請求行、請求頭部、請求資料

response-包括狀態行、訊息報頭、響應正文

下面來查詢一下一次請求的內容資訊。curl -v

[root@localhost conf]# curl -v     

* about to connect() to www.imooc.com port 80 (#0)

* trying 117.121

.101

.40...

* connected to www.imooc.com (117.121

.101

.40) port 80 (#0)

> get / http/1.1 //... >發起request請求 請求方式,請求協議

> user-agent: curl/7.29

.0 //... request請求的head內容

> host: www.imooc.com

> accept: */*

> //...

< response 服務端響應的內容

301 moved permanently // 301 響應的狀態

< server: nginx

< date: mon, 14 may 2018

08:38:35 gmt

< content-type: text/html

< content-length: 178

< connection: keep-alive

< location:

<

"white">

nginx

* connection #0 to host www.imooc.com left intact

五、nginx日誌型別

暫且省略,參考官網

六、nginx模組講解

1. nginx官方模組

http_sub_module :http內容替換 (有多個語法)

syntax

2.第三方模組

七、nginx的請求限制

連線頻率限制 : limit_conn_module

請求頻率限制 : limit_req_module

1.1連線與請求的原理

建立在tcp協議之上。 tcp三次請求之後,才能進行http之間連線請求。最後在通過客戶端與服務端之間第三方包來回傳輸。

http請求建立在一次tcp連線基礎上

一次tcp請求至少產生一次http請求,當然可以產生多次http請求

1.2 nginx對http請求連線的限制語法

1.3請求限制

syntax

1、實現訪問控制的基本方式

​ 基於ip的訪問控制 http_access_module

​ 基於使用者的信任登入 http_auth_basic_module

http_access_module 配置

http_access_module 侷限性

​ 只能通過remote_addr來信任。

優化3、http_x_forwarded_for

記錄過程和ip位址

4、http_access_module侷限性

方法一、採用別的http資訊控制訪問,如:http_x_forward_for

方法二、結合geo模組作(後面詳細記錄)

方法三、通過http自定義變數傳遞

後續待更新,整理!

Nginx學習 之基於Nginx的中介軟體架構

1.http請求 request 包括請求行 請求頭 請求資料 respone 包括狀態行 訊息報頭 相應正文2.nginx日包括error.log access logginx變數 http請求變數 arg parameter http header sent http header 內建變數 n...

nginx 基於nginx的負載均衡

在瀏覽器中訪問http xx dev a.html,負載均衡效果,平均在8080和8081埠中。提前準備好兩個tomcat 埠號乙個是8081 另乙個是8080 在兩個tomcat中建立目錄dev 以及目錄下新增a.html。在nginx中配置檔案中 新增如下。nginx balance upstr...

nginx基於ssl的配置

nginx程式環境 配置檔案的組成部分 主配置檔案 nginx.conf include conf.d conf fastcgi,uwsgi,scgi等協議相關的配置檔案 mime.types 支援的mime型別 主程式檔案 usr sbin nginx unit file nginx.servic...