Nginx的軟體架構

2022-06-27 11:36:16 字數 886 閱讀 8993

nginx原理架構圖

nginx是 master/worker 模型

乙個master程序,可生成乙個或多個worker程序,每個worker程序基於事件驅動機制響應客戶端請求;

事件驅動機制:epoll(linux),kqueue(freebsd),/dev/poll(solaris)

訊息通知:select,poll,rt signals

支援sendfile,sendfile64

支援aio,mmap

master的任務:載入配置檔案、管理worker程序、平滑公升級、……

worker的功能:提供http服務、http**、fastcgi**、……

模組型別:

核心模組(對於http服務及郵件服務都是必要的):core module

standard http modules 標準模組必須裝

optional http modules 可選模組可以選擇用還是不用

mail modules 郵件模組

3rd party modules 第三方模組

用來做什麼?

靜態資源的web伺服器

http伺服器的反向**

nginx可以做正向**伺服器:

**客戶端的請求,自己處理靜態資源,如果是動態資源就交給其它應用

nginx可以做反向**伺服器:

**後端伺服器的作用,如果乙個客戶端把請求發過來,他會完全把請求**給後端伺服器

nginx做反向**可以隱藏後端伺服器的ip;還可以給後端伺服器分擔壓力;在反向**上還可以做乙個負載均衡的功能,但有多個客戶端請求時,可以分別發給幾台後端伺服器

軟體架構設計 nginx(二)

nginx在linux下的安裝 在ubuntu中安裝的nginx,目錄結構如下 usr sbin nginx 主程式 etc nginx 存放配置檔案 usr share nginx 存放靜態檔案 var log nginx 存放日誌 nginx的安裝 nginx實現動靜分離 如果出現這種錯誤,則用...

nginx基礎架構

網路效能 單次請求的延遲性 網路效率 可進化性 可擴充套件性 可定製性 可配置性 可重用性 關鍵元件的運 況可以被監控的程度 所有模組都遵循同樣的ngx module t介面設計規範,這種方式帶來了良好的簡單性 靜態可擴充套件性 可重用性 模組的基本介面ngx module t足夠簡單,只涉及模組的...

nginx常見架構

服務 nginx負載均衡 nginx快取服務 快取 1 靜態資源web服務 檔案讀取sendfile tcp nopush tcp nodelay 壓縮,預讀gzip模組 2 服務 3 負載均衡排程器slb 4 動態快取 新增cache control expires頭 靜態資源訪問 壓縮 list...