高度模組化的設計設
nginx
架構的基礎。
在nginx
中,除了少量的核心**,其它一切皆為模組。模組化設計具有下面特點:
1、高度抽象的模組介面
2、靈活性
3、配置模組的設計使
nginx
提供了高可配置性、高可擴充套件性、高可定製性、高可伸縮性。
4、核心模組介面簡單化
5、多層次、多類別的模組設計
全部模組間是分層次、分類別的,官方
nginx
有五大型別的模組:核心模組、配置模組、事件模組、
模組、mail
模組。
配置模組和核心模組這兩種模組型別是由
nginx
的框架**所定義的,這裡的配置模組是全部模組的基礎,它實現了最主要的配置項解析功能(解析
nginx.conf
檔案)。
nginx
框架還會呼叫核心模組。但其它三種模組都不會與框架產生直接關係。事件模組、
模組、mail
模組這三種模組的共性是:實際上它們在核心模組中各有
1個模組作為自己的代言人,並在同類模組中有
1個作為核心業務與管理功能的模組。
模組直接被編譯僅
nginx,
因此屬於靜態編譯方式。
啟動nginx
後。nginx
的模組被自己主動載入,不像
apache
,首先將模組編譯為乙個
so檔案,然後再配置檔案彙總指定是否進行載入。在解析配置檔案時。
nginx
的每個模組都有可能去處理某個請求。可是同乙個處理請求僅僅能由乙個模組來完畢。
Thrift RPC 系列教程(3) 模組化
模組化是好事,以及,它讓我聯想到了 c 語言,以及它那如同平原一樣的命名空間。所謂 模組化 是一種很自然的事情,體現了 分而治之 的思想。坦白來說,這是乙個無需過多討論的話題。如果你寫過c 語言,就會對它那 近乎平坦 的命名空間,感到熟悉。所有的函式,變數都在同乙個全域性命名空間 static 型別...
模組化之SeaJS 二
此文來自 予舍驛站 提供簡單 極致的模組化開發體驗 非官方文件,整理來自己官方文件的文字與例項,方便速查。別名配置,配置之後可在模組中使用require呼叫require jquery seajs.config define function require,exports,module 設定路徑,...
Nginx 的模組化體系結構
nginx 的內部結構是由核心部分和一系列的功能模組所組成。這樣劃分是為了使得每個模組的功能相對簡單,便於開發,同時也便於對系統進行功能擴充套件。為了便於描述,下文中我們將使用 nginx core 來稱呼 nginx 的核心功能部分。nginx 提供了 web 伺服器的基礎功能,同時提供了 web...