一深入理解Nginx的 模組化 ,全域性觀

2021-07-13 13:13:26 字數 1404 閱讀 9550

.

├── auto 自動檢測系統環境以及編譯相關的指令碼

│ ├── cc 關於編譯器相關的編譯選項的檢測指令碼

│ ├── lib nginx編譯所需要的一些庫的檢測指令碼

│ ├── os 與平台相關的一些系統引數與系統呼叫相關的檢測

│ └── types 與資料型別相關的一些輔助指令碼

├── conf 存放預設配置檔案,在make install後,會拷貝到安裝目錄中去

├── contrib 存放一些實用工具,如geo配置生成工具(geo2nginx.pl)

├── html 存放預設的網頁檔案,在make install後,會拷貝到安裝目錄中去

├── man nginx的man手冊

└── src 存放nginx的源**

├── core nginx的核心源**,包括常用資料結構的定義,以及nginx初始化執行的核心**如main函式

├── event 對系統事件處理機制的封裝,以及定時器的實現相關**

│ └── modules 不同事件處理方式的模組化,如select、poll、epoll、kqueue等

├── http nginx作為http伺服器相關的**

│ └── modules 包含http的各種功能模組

├── mail nginx作為郵件**伺服器相關的**

├── misc 一些輔助**,測試c++頭的相容性,以及對google_perftools的支援

|—— stream nginx支援傳輸層的 協議:如tcp、udp協議,uninx域socket。這個模組是在nginx1.9以後版本才有的。

└── os 主要是對各種不同體系統結構所提供的系統函式的封裝,對外提供統一的系統呼叫介面。

配置模組是所有 模組的基礎,它實現了最基本的配置項 的解析功能(也就是解析 nginx.conf)

核心模組的型別是ngx_core_module

核心 模組的定義

深入理解Nginx的 模組化 ,全域性觀

auto 自動檢測系統環境以及編譯相關的指令碼 cc 關於編譯器相關的編譯選項的檢測指令碼 lib nginx編譯所需要的一些庫的檢測指令碼 os 與平台相關的一些系統引數與系統呼叫相關的檢測 types 與資料型別相關的一些輔助指令碼 conf 存放預設配置檔案,在make install後,會拷...

三 深入理解Nginx的模組化 (結合原始碼詳解)

盜用前面用到的流程圖 第二步實際上是呼叫ngx add inherited sockets 檔名 nginx.c int ngx cdecl main int argc,char const argv nginx在不重啟服務公升級,舊版本的master程序會通過execve系統呼叫來啟動新版本的ma...

模組化的理解,以及模組化的好處

先理解模組 在程式設計中,為完成某一功能所需的一段程式或子程式 或指能由編譯程式 裝配程式等處理的獨立程式單位 或指大型軟體系統的一部分。可以這樣理解每乙個頁面中的部分都可以看成乙個模組。模組化是指解決乙個複雜問題時自頂向下逐層把系統劃分成若干模組的過程,有多種屬性,分別反映其內部特性。是指將每乙個...