Nginx安裝與架構說明

2021-08-30 08:50:39 字數 2283 閱讀 4374

1.linux 核心2.6及以上版本:

只有2.6之後才支援epool ,在此之前使用select或pool多路復用的io模型,無法解決高併發壓力的問題。通過命令uname -a 即可檢視。

#檢視 linux 核心

uname -a

#yum 安裝nginx 環境

yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel pcre pcre-devel

wget
解壓

tar -zxvf nginx-1.14.0.tar.gz
解壓後就能看到同目錄下出現nginx資料夾

但是這只是一堆源**,並不是可執行檔案

基於引數構建

cd進到nginx目錄進行構建,進行環境的初始化,將相關的源**編譯到obj目錄下,核心模組的源**都在這裡邊

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-debug
但構建完成後也只是一堆源**,並不是可執行檔案,再執行make && make install命令就生成了可執行檔案了

make && make install
然後就能看到/usr/local/資料夾下看見已經構建好的nginx

進到nginx進行啟動

./sbin/nginx
啟動後在瀏覽器輸入虛擬機器ip就能訪問到nginx主頁

#預設方式啟動:

./sbin/nginx

#指定配置檔案啟動

./sbing/nginx -c /tmp/nginx.conf

#指定nginx程式目錄啟動

./sbin/nginx -p /usr/local/nginx/

#快速停止

./sbin/nginx -s stop

#優雅停止

./sbin/nginx -s quit

#熱裝載配置檔案

./sbin/nginx -s reload

#重新開啟日誌檔案

./sbin/nginx -s reopen

nginx 架構圖:

架構說明:

1)nginx啟動時,會生成兩種型別的程序,乙個是主程序(master),乙個(windows版本的目前只有乙個)和多個工作程序(worker)。主程序並不處理網路請求,主要負責排程工作程序,也就是圖示的三項:載入配置、啟動工作程序及非停公升級。所以,nginx啟動以後,檢視作業系統的程序列表,我們就能看到至少有兩個nginx程序。

2)伺服器實際處理網路請求及響應的是工作程序(worker),在類unix系統上,nginx可以配置多個worker,而每個worker程序都可以同時處理數以千計的網路請求。

3)模組化設計。nginx的worker,包括核心和功能性模組,核心模組負責維持乙個執行迴圈(run-loop),執行網路請求處理的不同階段的模組功能,如網路讀寫、儲存讀寫、內容傳輸、外出過濾,以及將請求發往上游伺服器等。而其**的模組化設計,也使得我們可以根據需要對功能模組進行適當的選擇和修改,編譯成具有特定功能的伺服器。

4)事件驅動、非同步及非阻塞,可以說是nginx得以獲得高併發、高效能的關鍵因素,同時也得益於對linux、solaris及類bsd等作業系統核心中事件通知及i/o效能增強功能的採用,如kqueue、epoll及event ports。

nginx 核心模組:

nginx架構說明(三)

2.1 nginx啟動時,會生 不處理網路請求,主要負責排程工作程序,也就是圖示的三項 載入配置 啟動工作程序及非停公升級。所以,nginx啟動以後,檢視作業系統的程序列表,我們就能看到至少有兩個nginx程序。2.2 伺服器實際處理網路請求及響應的是工作程序 worker 在類unix系統上,ng...

Nginx 架構說明 配置使用實踐

nginx 安裝 nginx 架構說明 nginx實踐 略nginx 架構圖 架構說明 1 nginx啟動時,會生 不處理網路請求,主要負責排程工作程序,也就是圖示的三項 載入配置 啟動工作程序及非停公升級。所以,nginx啟動以後,檢視作業系統的程序列表,我們就能看到至少有兩個nginx程序。2 ...

LNMP架構 安裝Nginx 1 12 2

root dl 001 cd usr local src root dl 001 src wget 2017 12 24 22 22 26 2.tar.gz 正在解析主機 nginx.org nginx.org 206.251 255 63,95.211 80.227,2606 7100 1 69 ...