Nginx之基礎概念及特性介紹

2021-09-11 20:24:44 字數 2669 閱讀 8027

2. nginx的安裝部署

nginx是一款輕量級的http伺服器,發音為「engine x」,是一款高效能的http和反向**伺服器,同時也是乙個imap/pop3/smtp**伺服器,乙個通用的tcp / udp**伺服器。其特點是占用記憶體資源少,併發能力強,根據官方提供的資料,單台伺服器併發能力最高能達到5萬個。nginx最初是由俄羅斯人igor sysoev 為俄羅斯的訪問量第二的站點ramber.ru開發的,使用了基於bsd的許可。nginx的官方站點:

nginx是以事件驅動的方式編寫,所以具備非常好的效能,同時也是乙個非常高效的反向**、負載均衡。其擁有匹配lighttpd的效能,同時還沒有lighttpd的記憶體洩漏問題。根據官方資料,nginx維持10000個非活動連線,只需要2.5m記憶體。

nginx 因為它的穩定性、豐富的模組庫、靈活的配置和低系統資源的消耗而聞名.業界一致認為它是 apache2.2+mod_proxy_balancer 的輕量級代替者,不僅是因為響應靜態頁面的速度非常快,而且它的模組數量達到 apache 的近 2/3。對 proxy 和 rewrite 模組的支援很徹底,還支援 mod_fcgi、ssl、vhosts ,適合用來做 mongrel clusters 的前端 http 響應。

nginx是乙個支援非阻塞、事件驅動型及非同步i/o模型的web server;它是以多程序的方式工作的。

nginx在啟動後,會有乙個master程序和多個worker程序。master程序主要用來管理worker程序;包括接收來自客戶端http/https請求,向各worker程序傳送訊號,由worker程序處理,監控worker程序的執行狀態;當worker程序異常終止,會自動重新啟動新的worker程序。而基本的http連線請求都是由worker程序處理並響應;master只負責分配接入的請求給worker。每個worker程序不會干擾其他worker程序的請求處理。worker的數量是乙個設定的,一般會設定與伺服器的物理核心數量一致。

nginx的模組主要由以下幾部分組成:

nginx提供了web伺服器的基礎功能,同時提供了web服務反向**、郵件服務反向**功能。nginx core實現了底層的通訊協議,為其他模組和nginx程序構建了基本的執行時環境,為其他模組構建了協調執行的基礎。

rpm方式安裝,只需要新增epel源便可即可:

# 配置epel源

[root@localhost ~]# wget -o /etc/yum.repos.d/epel.repo

# 安裝

[root@localhost ~]# yum install -y nginx

# 啟動

[root@localhost ~]# systemctl enable nginx.service

[root@localhost ~]# systemctl start nginx.service

# 建立nginx使用者及組

# 安裝

[root@localhost ~]# make && make install

# 啟動

[root@localhost ~]# /usr/local/nginx/sbin/nginx

使用configure命令配置編譯安裝,可參考官方文件的,檢視該命令支援的引數及含義:en/docs/configure.html

nginx -t 			# 測試nginx配置檔案的語法是否有誤

nginx -s stop # 處理完最後乙個請求後停止nginx程序,包括master和worker程序;

nginx -s reload # 過載配置檔案;配置檔案修改後可以使用該命令不重啟nginx平滑載入nginx配置;

nginx的基礎概念及特性介紹完畢。

系統概念及特性

系統的幾大特點 與系統概念相關的活動被稱作為 系統思考 系統思考有助於我們理解整個世界是如何運作的,系統思考通過抽象的方式來表示整個世界的不同方面。對於系統來說,也並非總是需要對表示的事物精確地響應。下面是乙個系統思考的例子 以乙個公司為例 環境 業務活動互動的所有參與人員,組織機構,實體結構。更詳...

Git概念及基礎

git重點 一 起步 1 檔案的版本 1 操作麻煩 2 命名不規範 3 容易丟失 4 協作困難 2 版本控制軟體 1 概念 把手工管理檔案版本的方式,改為由軟體管理檔案的版本 這個負責管理檔案版本的軟體,叫做 版本控制軟體 2 好處 操作簡便 易於對比 易於回溯 不易丟失 協作方便 3 版本控制系統...

資料庫事務概念及特性

事務結束於 執行commit或rollback語句 執行一條ddl語句,例如create table語句 在這種情況下,會自動執行commit語句 執行一條dcl語句,例如grant語句,在這種情況下,會自動執行commit語句 斷開與資料庫的連線 執行一條dml語句,該語句卻失敗了,在這種情況下,...