中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

Nginx模塊概述—干貨分享!

發布時間:2020-07-05 12:55:49 來源:網絡 閱讀:496 作者:JarryZ 欄目:建站服務器

Nginx 工作原理 :

Nginx 由內核和模塊組成

1.Nginx 本身做的工作實際很少,當它接到一個 HTTP 請求時, 它僅僅是通過查找配置文件將此次請求映射到一個 location block,而此 location 中所配 置的各個指令則會啟動不同的模塊去完成工作,因此模塊可以看做 Nginx 真正的勞動工作者。
2. 通常一個 location 中的指令會涉及一個 handler 模塊和多個 filter 模塊(當然,多個 location可以復用同一個模塊)。handler 模塊負責處理請求,完成響應內容的生成,而 filter 模塊對響應內容進行處理。用戶根據自己的需要所開發的模塊都屬于第三方模塊。正是有了這么多模塊的支撐, Nginx 的功能才會如此強大。

Nginx 的模塊從結構上分為核心模塊、基礎模塊和第三方模塊:

1.核心模塊:HTTP 模塊、EVENT 模塊和 MAIL 模塊
2.基礎模塊:HTTP Access 模塊、HTTP FastCGI 模塊、HTTP Proxy 模塊和 HTTP Rewrite 模塊
3.第三方模塊:HTTP Upstream Request Hash 模塊、Notice 模塊和 HTTP Access Key 模塊

Nginx 的模塊從功能上分為如下三類:

1.Handlers(處理器模塊):此類模塊直接處理請求,并進行輸出內容和修改 headers 信息等操作。Handlers 處理器模塊一般只能有一個
2.Filters(過濾器模塊):此類模塊主要對其他處理器模塊輸出的內容進行修改操作,最后由 Nginx 輸出3.Proxies(代理類模塊):此類模塊是 Nginx 的 HTTP Upstream 之類的模塊,這些模塊主要與后端一些服務比如FastCGI 等進行交互,實現服務代理和負載均衡等功能。

Nginx的進程模型在工作方式上分為單工作進程和多工作進程兩種模式:

1.在單工作進程模式下,除主進程外,還有一個工作進程,工作進程是單線程的
2.在多工作進程模式下,每個工作進程包含多個線程。Nginx 默認為單工作進程模式

Nginx 在啟動后會有一個 master 進程和多個 worker 進程:

1.master 進程主要用來管理 worker 進程,主要包含:接收來自外界的信號,向各 worker 進程發送信號,監控 worker 進程的運行狀態,當 worker 進程退出后(異常情況下),會自動 重新啟動新的 worker 進程。
2.master進程充當整個進程組與用戶的交互接口,同時對進程進行監護。它不需要處理網絡事件,不負責業務的執行,只會通過管理worker進程來實現重啟服務、平滑升級、更換日志文件、配置文件實時生效等功能。

Nginx+FastCGI運行原理:

Nginx 不支持對外部程序的直接調用或者解析,所有的外部程序(包括 PHP)必須通過FastCGI 接口來調用。FastCGI 接口在Linux 下是 socket(這個 socket 可以是文件 socket, 也可以是 ip socket)。 wrapper 為了調用CGI 程序,還需要一個 FastCGI 的 wrapper(wrapper 可以理解為用于啟動另一個程序的程序),這個 wrapper綁定在某個固定 socket 上,如端口或者文件 socket。當 Nginx 將 CGI 請求發送給這個 socket 的時候,通過FastCGI 接口,wrapper 接收到請求,然后Fork(派生)出一個新的線程,這個線程調用解釋器或者外部程序處理腳本并讀取返回數據;接著 wrapper 再將返回的數據通過FastCGI 接口,沿著固定的 socket傳遞給 Nginx;最后 Nginx 將返回的數據(html 頁面或者圖片)發送給客戶端。

運行原理如下圖:

Nginx模塊概述—干貨分享!

向AI問一下細節

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

AI

泰兴市| 鱼台县| 海门市| 洛隆县| 普安县| 黄山市| 宁晋县| 六枝特区| 合山市| 西青区| 眉山市| 临西县| 芜湖市| 高台县| 密云县| 罗源县| 义马市| 诸城市| 浠水县| 兰考县| 广昌县| 磐安县| 依安县| 镶黄旗| 阜新| 依兰县| 澜沧| 沙坪坝区| 正阳县| 正镶白旗| 乐都县| 新泰市| 策勒县| 梅州市| 新源县| 肇东市| 蒙自县| 杭锦后旗| 旺苍县| 晋城| 邵阳县|